On Mon, Jul 13, 2015 at 04:02:43PM +1000, NeilBrown wrote: > I think that means we need a variant of pin_remove() which reports if > pin->done was 0 or -1. > If it was 0, then ->kill hasn't been called, and it won't be. So the > caller is free to clean up how it likes (providing RCU is used for > freeing). Grr... What will umount(2) wait for if it comes during your cleanup? You are putting them in the wrong order - pin_remove() is "I'm *DONE* killing that sucker, nothing to wait for", not "move along, don't wait for me, I've taken over killing it off". -- 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