Re: Huge race in lockd for async lock requests?

Rob Gardner
2009-05-29T02:59:03Z

J. Bruce Fields wrote:
>
> Looking at the code.... This is all under the BKL, and as far as I can
> tell there aren't any blocking operations anywhere there, so I don't
> think this should happen if the filesystem is careful. Have you seen it
> happen?

Aha, I just figured it out and you were right. The filesystem in this
case was not careful. It broke the rules and actually made the fl_grant
call *before* even returning to nlmsvc_lock's call to vfs_lock_file, and
it did it in the lockd thread! So the BKL was of no use, and I saw
nlmsvc_grant_deferred print "grant for unknown block". So I think
everything is ok, no huge race in lockd for async lock requests. Thank
you for clearing this up.

Rob Gardner