Re: [PATCH 10/10] gfs2: nfs lock support for gfs2

2006-12-07 Thread J. Bruce Fields
On Wed, Dec 06, 2006 at 10:47:46PM -0800, Marc Eshel wrote: Here is a rewrite of gdlm_plock_callback(). We still need to add the lock cancel. Marc. int gdlm_plock_callback(struct plock_op *op) { struct file *file; struct file_lock *fl; int (*notify)(void *, void *, int) =

Re: [PATCH 10/10] gfs2: nfs lock support for gfs2

2006-12-06 Thread Steven Whitehouse
Hi, This looks good to me, and I'm copying in Dave Wendy who have both done previous work in this area for further comment. Provided we can get this tested, I'd be happy to accept the patch in its current form. Steve. On Wed, 2006-12-06 at 00:34 -0500, J. Bruce Fields wrote: From: J. Bruce

Re: [PATCH 10/10] gfs2: nfs lock support for gfs2

2006-12-06 Thread David Teigland
On Wed, Dec 06, 2006 at 12:34:20AM -0500, J. Bruce Fields wrote: +int gdlm_plock_callback(struct plock_op *op) +{ + struct file *file; + struct file_lock *fl; + int rv; + + spin_lock(ops_lock); + if (!list_empty(op-list)) { + printk(KERN_INFO plock op on

Re: [PATCH 10/10] gfs2: nfs lock support for gfs2

2006-12-06 Thread J. Bruce Fields
On Wed, Dec 06, 2006 at 09:49:51AM -0600, David Teigland wrote: The gfs side looks fine to me. Did you forget to call fl_notify from gdlm_plock_callback() or am I missing something? Yes, looks like we missed something, thanks. This code's an rfc (not even tested), so don't apply it yet! What

Re: [PATCH 10/10] gfs2: nfs lock support for gfs2

2006-12-06 Thread David Teigland
On Wed, Dec 06, 2006 at 02:57:22PM -0500, J. Bruce Fields wrote: On Wed, Dec 06, 2006 at 09:49:51AM -0600, David Teigland wrote: The gfs side looks fine to me. Did you forget to call fl_notify from gdlm_plock_callback() or am I missing something? Yes, looks like we missed something,

Re: [PATCH 10/10] gfs2: nfs lock support for gfs2

2006-12-06 Thread Marc Eshel
Here is a rewrite of gdlm_plock_callback(). We still need to add the lock cancel. Marc. int gdlm_plock_callback(struct plock_op *op) { struct file *file; struct file_lock *fl; int (*notify)(void *, void *, int) = NULL; int rv; spin_lock(ops_lock); if