rx: Always call rxi_StartListener
authorAndrew Deason <adeason@sinenomine.net>
Fri, 20 Sep 2013 20:13:43 +0000 (15:13 -0500)
committerDerrick Brashear <shadow@your-file-system.com>
Mon, 23 Sep 2013 02:11:20 +0000 (19:11 -0700)
Commit c10f5296 made rx_Init only call rxi_StartListener in the kernel
if we have RXK_LISTENER_ENV. But this doesn't make any sense, since
rxi_StartListener only does anything if RXK_LISTENER_ENV is _not_
defined. As a result, for any non-rxk-listener non-rx-upcall platform,
we never receives rx packets in the kernel, since we never set up our
rx packet callback. The only such platform appears to be AIX, since
while other platforms (HPUX, FBSD, IRIX) have a non-rxk-listener mode,
they also implement an rxk-listener mode that we always turn on.

So, just always call rxi_StartListener, and let the ifdef guards for
the various implementations of rxi_StartListener do the right thing.

FIXES 131725

Change-Id: I209a89bda06f2c790aca2682468066c7b0bb7edd
Reviewed-on: http://gerrit.openafs.org/10263
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>

src/rx/rx.c

index b819e3a..6d7e78d 100644 (file)
@@ -639,11 +639,9 @@ rx_InitHost(u_int host, u_int port)
     rx_GetIFInfo();
 #endif
 
-#if defined(RXK_LISTENER_ENV) || !defined(KERNEL)
     /* Start listener process (exact function is dependent on the
      * implementation environment--kernel or user space) */
     rxi_StartListener();
-#endif
 
     USERPRI;
     rx_atomic_clear_bit(&rxinit_status, 0);