[OpenAFS-devel] Kernel 2.4.0 Oops when afs is shutting down

Michael Pronath michael.pronath@gmx.de
Mon, 15 Jan 2001 16:43:09 +0100


 After applying the patch posted recently by Chas Williams (9 Jan 2001), I
 am able to compile and run the AFS client on my 2.4.0 kernel. However,
 when AFS is unmounted, it oopses.  I thought, it could be the new
 waitqueues and therefore, I added some afs_warn's to show where it happens
 and #define'd WAITQUEUE_DEBUG 1  in include/linux/wait.h.

 AFAIK, the oops happens during the call to interruptible_sleep_on in
 afs_osi_Sleep.  But as it happens in the kernel socket code, it may
 well be a problem with releasing the RxListener socket in osi_StopListener.


kernel: RxEvent... in afs_osi_Sleep. Calling afs_getevent.
kernel: in afs_getevent
kernel: 12evp=ccd5d7c0 3,evp->cond=00000000 in afs_osi_Sleep. After
afs_getevent,evp=ccd5d7c0,evp->cond=00000000.
kernel: end of sleep loop. evp=d086194f.
kernel: end of sleep loop. evp=d086194f.
kernel: RxListener... 
kernel: Now calling osi_StopListener
kernel: Now in osi_StopListenerKilling mit sys_killp=c011dda8,
rxk_ListenerPid=309
kernel: sock releasing rx_socket=-879862204
kernel: osi_SockListener finished.
kernel: Returned from osi_StopListener.
kernel: Now sleeping until getting wake.in afs_osi_Sleep. Calling
afs_getevent.
kernel: in afs_getevent
kernel: 12evp=ccd5d7c0 3,evp->cond=00000000 in afs_osi_Sleep. After
afs_getevent,evp=ccd5d7c0,evp->cond=00000000.
kernel: wq bug, forcing oops.
kernel: kernel BUG at /usr/src/linux-2.4.0/include/linux/wait.h:184!
kernel: invalid operand: 0000
kernel: CPU:    0
kernel: EIP:    0010:[add_wait_queue_exclusive+57/272]
kernel: EFLAGS: 00210082
kernel: eax: 0000003d   ebx: 00000000   ecx: c028cf68   edx: c028cf70
kernel: esi: cbacba88   edi: 00200286   ebp: cded9780   esp: cbacba44
kernel: ds: 0018   es: 0018   ss: 0018
kernel: Process afsd-2.4.0 (pid: 309, stackpage=cbacb000)
kernel: Stack: c022a00a c0229fe0 000000b8 cbacba88 cbacba88 cbacbaa0
c01e2d10 cded97dc 
kernel:        cded9780 cded97dc cbacbaf0 00000000 cbaca000 00000000
00000000 cbacba98 
kernel:        00000000 00000001 cbaca000 00000000 00000000 cbacba98
00000000 c01e2e8e 
kernel: Call Trace: [wait_for_packet+96/304] [skb_recv_datagram+174/196]
[udp_recvmsg+93/552] [inet_recvmsg+61/84] [sock_recvmsg+61/172] [<d0858018>]
[<d0853e3e>] 
kernel:        [<d08af2a0>] [<d08524d7>] [<d0859316>] [<d08589f3>]
[<d0858b13>] [<d08642f2>] [<d0864311>] [__alloc_pages+233/880] 
kernel:        [do_wp_page+751/796] [handle_mm_fault+291/340]
[do_page_fault+409/1382] [do_page_fault+0/1382] [<d0864d78>]
[system_call+51/56] 
kernel: 
kernel: Code: 0f 0b 83 c4 0c 89 f6 8b 4b 0c 8d 53 0c 39 d1 74 39 8b 43 10 






-- 

Dipl.-Ing. Michael Pronath
Lehrstuhl fuer Entwurfsautomatisierung            Tel:  +49 89 289 23659
Technische Universitaet Muenchen                  Fax:  +49 89 289 63666
Arcisstr.21, D-80333 Muenchen         TU-Innenhof, Gebaeude 9, Raum 4915
Mailto:Michael.Pronath@ei.tum.de