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 -- 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