lkml.org 
[lkml]   [1998]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectNFS File Locking
Bill,

I have just tried NFS file locking for the first time. For lack of any
documentation, I simply started rpc.statd (from Olaf Kirch's utilities) on
both ends:

(root@air) /home/hirsch : rpc.statd
14.07.98 20:41:48 rpc.statd[356]: New state: 1
14.07.98 20:41:48 rpc.statd[356]: Waiting for client connections.
14.07.98 20:42:24 rpc.statd[356]: MONITORING 192.168.244.57 for air
14.07.98 20:42:24 rpc.statd[356]: Waiting for client connections.

...

(root@cy) ~ : rpc.statd
14.07.98 20:42:04 rpc.statd[310]: New state: 1
14.07.98 20:42:04 rpc.statd[310]: Waiting for client connections.
14.07.98 20:42:09 rpc.statd[310]: MONITORING 192.168.244.50 for cy
14.07.98 20:42:09 rpc.statd[310]: Waiting for client connections.

Then ran a small Tcl script that uses locking on both the server (air) and
the client (cy).

Almost immediately, lockd on the server blows up:

Aug 14 20:43:05 air kernel: svc: unknown procedure (15)
Aug 14 20:43:05 air kernel: kfree: Bad obj c0200945
Aug 14 20:43:05 air kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000000
Aug 14 20:43:05 air kernel: current->tss.cr3 = 00101000, <r3 = 00101000

(snip)

Which translates to:

Using `/lib/modules/2.1.115/System.map' to map addresses to symbols.

>>EIP: c012174b <kfree+1ab/1c0>
Trace: c014c7ad <nlmclnt_freegrantargs+d/20>
Trace: c014e337 <nlmsvc_delete_block+107/120>
Trace: c014e4c5 <nlmsvc_lock+f5/320>
Trace: c014ef94 <nlmsvc_retrieve_args+b4/100>
Trace: c014f166 <nlmsvc_proc_lock+96/e0>
Trace: c014f166 <nlmsvc_proc_lock+96/e0>
Trace: c0184258 <svc_process+258/590>
Trace: c0185dfe <svc_recv+1ee/320>
Trace: c014dd4d <lockd+21d/2f0>
Trace: c0183e5f <svc_create_thread+bf/100>
Trace: c014dd4d <lockd+21d/2f0>
Code: c012174b <kfree+1ab/1c0> movl $0x0,0x0
Code: c0121755 <kfree+1b5/1c0> addl $0x8,%esp
Code: c0121758 <kfree+1b8/1c0> popl %ebx
Code: c0121759 <kfree+1b9/1c0> popl %esi
Code: c012175a <kfree+1ba/1c0> popl %edi
Code: c012175b <kfree+1bb/1c0> popl %ebp
Code: c012175c <kfree+1bc/1c0> addl $0x8,%esp
Code: c012175f <kfree+1bf/1c0>

lockd is left in a zombie state, and the application is hung in an
uninterruptable wait on the client side.

I thought locking was operational, but apparently not. I'll be glad to
try anything you suggest, but I don't know very much about the RPC
subsystem or NFS internals..

Steve



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html

\
 
 \ /
  Last update: 2005-03-22 13:44    [W:0.042 / U:0.084 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site