On Wed, Oct 27, 2010 at 05:23:59PM +0200, Arnd Bergmann wrote: > It comes back to the original problem with Bruce's patch though: > fcntl_setlease wants to atomically add a lease or fail. If > fasync_helper fails, we want to remove the lease that was > just added before anyone can see it. At the very least we need > to keep the flock from getting freed in another thread while > we call fasync_helper without the lock. a variant of fasync_add_entry that takes a preallocated fasync_struct would indeed take care of that. > locks_delete_lock is also called with lock_flocks held and calls > fasync_helper... but with on = 0, which calls into fasync_remove_entry, which doesn't sleep. -- 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