Re: [PATCH] lockd: handle fl_grant callbacks with coalesced locks (RFC)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> On Wed, Dec 17, 2008 at 03:01:56PM -0500, J. Bruce Fields wrote:
> > On Wed, Dec 17, 2008 at 01:14:53PM -0600, David Teigland wrote:
> > Also, since flc is never actually handed to the posix lock system, I
> > think it should be a "shallow" lock copy--so it should be created with
> > __locks_copy_lock().  Something like the below?

> (I'd like to do the s/locks_copy_lock/__locks_copy_lock/ in a separate
> patch since it's not directly related to fixing the bug.)

I haven't looked at why, but s/locks_copy_lock/__locks_copy_lock/ creates
problems with the file_lock's kept by the vfs.  With two programs doing
locking on an nfs client I get lots of messages like this on the server:

dlm: dlm_plock_callback: vfs lock error -11 num 20573 file
ffff88007e16a818 fl ffff88007dc796b0
dlm: dlm_plock_callback: vfs lock error -11 num 2055f file
ffff88007e16a818 fl ffff88007dc796b0
dlm: dlm_plock_callback: vfs lock error -11 num 2058b file
ffff880017cf56d0 fl ffff88007e566750
dlm: dlm_plock_callback: vfs lock error -11 num 2055c file
ffff88007e16a818 fl ffff88007e566750

(code modified to report the -11 / -EAGAIN)

And /proc/locks on the server has entries that look like:

54: POSIX  *NOINODE* WRITE 8682 <none>:0 5 9
55: POSIX  *NOINODE* READ  8682 <none>:0 0 4
56: POSIX  *NOINODE* READ  8682 <none>:0 0 4
57: POSIX  *NOINODE* READ  8682 <none>:0 5 9
58: POSIX  *NOINODE* READ  8682 <none>:0 5 9
59: POSIX  *NOINODE* WRITE 8682 <none>:0 0 4

My tests are looking good using the current locks_copy_lock(), so I plan
to just stick with that.
Dave

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux