Solaris: stop NetIfPoller on shutdown
authorAndrew Deason <adeason@sinenomine.net>
Wed, 12 May 2010 18:59:06 +0000 (13:59 -0500)
committerDerrick Brashear <shadow@dementia.org>
Wed, 12 May 2010 19:44:20 +0000 (12:44 -0700)
commit9562721b89a2a7a7f32a165762d7fba8540006a9
treef1cd21038d459a3795f6609a3fe29d5e7396666a
parent7730769ccfebd2a268503b6e618609722cc3b4a5
Solaris: stop NetIfPoller on shutdown

The NetIfPoller code that is enabled on AFS_SUN510_ENV never gets
shutdown properly. The current code looks as if it was intended for
NetIfPoller to recognize the appropriate termState and just return,
but we never wait for it, and so we can complete the shutdown sequence
without NetIfPoller ever knowing that we are shutting down. This can
cause the machine to panic, as we keep attempting to run NetIfPoller
even after libafs has been unloaded.

Since NetIfPoller is fired by default every 30 seconds, we probably do
not want to wait for it to fire during shutdown. Instead, just destroy
the necessary timeout and task queue, which will wait for NetIfPoller
to complete if running, and will just prevent it from running in the
future otherwise.

Change-Id: I25f9536d2713baf524a2450400c428ac506525f1
Reviewed-on: http://gerrit.openafs.org/1957
Tested-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
src/afs/afs_call.c
src/rx/SOLARIS/rx_knet.c
src/rx/rx_prototypes.h