[OpenAFS-devel] Kernel 2.4.0 Oops when afs is shutting down
Derek Atkins
warlord@MIT.EDU
16 Jan 2001 10:46:12 -0500
Ok, I've just taken a closer look.
If you go to afs/afs_call.c around line 1164... Move the
osi_StopListener() call to happen _AFTER_ the while loop. In other
words, make the code look like this:
while (afs_termState == AFSOP_STOP_RXK_LISTENER)
afs_osi_Sleep(&afs_termState);
osi_StopListener(); /* This closes rx_socket. */
Let me know if this fixes your problem. :)
-derek
Chas Williams <chas@cmf.nrl.navy.mil> writes:
> >On Mon, 15 Jan 2001 13:52:10 -0500, Daniel Jacobowitz wrote:
> > is sitting in wait_for_packet, and then we close the socket while still
> > in wait_for_packet, which oopses because we cleared its locked
> > structure out from under it. I couldn't figure out the appropriate
>
> looking at this problem again, and just sort of guessing since i dont
> know much about this section of the code, it looks like one of the
> afsd winds up stuck rxk_ListenerProc(). the shutdown kill -9's this
> listenerproc which doesnt allow it to complete since it seems to
> want to set rxk_ListenerPid back to 0. this would indicate that the
> socket is not in use. so if osi_StopListener() would not kill -9
> the listener proc, and signal afs_termState to be AFSOP_STOP_RXK_LISTENER
> osi_StopListener could spin on rxk_ListenerPid before closing the
> socket?
> _______________________________________________
> OpenAFS-devel mailing list
> OpenAFS-devel@openafs.org
> https://lists.openafs.org/mailman/listinfo.cgi/openafs-devel
--
Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
Member, MIT Student Information Processing Board (SIPB)
URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH
warlord@MIT.EDU PGP key available