Push the BKL acquisition from vfs to every specific filesystems with hope that it can be eliminated in a second moment. Filesystems, which support umount_begin(), changed by this patch are 9p, nfs, cifs and fuse. Changes: Collapsed all patches into only one as requested by Al Viro. Moved CIFS_SB() down into BKL protected zone as requested by Matthew Wilcox. It is hard to say if tcon (into cifs's umount_begin() function) should be protected by BKL. Up to now umount_begin() is always called with BKL held so in uncertainty I maintain same logic. So I moved unlock_kernel() to at the bottom of that function as requested by Al Viro and Matthew Wilcox. Notes: About cifs's umount_begin() function I suspect that a deadlock or circular locking dependency can happens into kill-the-BKL tree if that patch is applied. -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html