On Thu, May 10, 2007 at 05:04:21PM -0400, bfields wrote: > On Thu, May 10, 2007 at 05:01:05PM -0400, Doug Chapman wrote: > > You are partly right on the test however note that it is using a start > > and len that are specific to the RDLCK so that should _only_ conflict > > with that lock. I did notice that the LTP test is taking a new lock on > > the entire file which should be blocked by eithe rthe RDLCK or the WRLCK > > and it doesn't check both, I plan on fixing that once this is resolved. > > > > But, much more importantly F_GETLK is returning F_UNLCK saying that > > there was no conflict at all. > > Argh, OK. I still can't see the problem yet, then. What filesystem is > this on?
Oh, cripes. I'm a loser. Next to figure out what's up with the connectathon locking tests that they pass when GETLK never finds a conflicting lock.... --b. diff --git a/fs/locks.c b/fs/locks.c index 53b0cd1..7fd2d17 100644 --- a/fs/locks.c +++ b/fs/locks.c @@ -670,7 +670,6 @@ posix_test_lock(struct file *filp, struct file_lock *fl) { struct file_lock *cfl; - fl->fl_type = F_UNLCK; lock_kernel(); for (cfl = filp->f_path.dentry->d_inode->i_flock; cfl; cfl = cfl->fl_next) { if (!IS_POSIX(cfl)) @@ -682,7 +681,8 @@ posix_test_lock(struct file *filp, struct file_lock *fl) __locks_copy_lock(fl, cfl); unlock_kernel(); return 1; - } + } else + fl->fl_type = F_UNLCK; unlock_kernel(); return 0; } - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/