On Thu, May 16, 2019 at 8:07 PM Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote: > > On Thu, May 16, 2019 at 01:26:29PM +0300, Amir Goldstein wrote: > > There is a common pattern among pseudo filesystems for removing a dentry > > from code paths that are NOT coming from vfs_{unlink,rmdir}, using a > > combination of simple_{unlink,rmdir} and d_delete(). > > > > Create an helper to perform this common operation. This helper is going > > to be used as a place holder for the new fsnotify_{unlink,rmdir} hooks. > > This is the wrong approach. What we have is a bunch of places trying > to implement recursive removal of a subtree. They are broken, each in > its own way, and I'm not talking about fsnotify crap - there are > much more unpleasant issues there. > > Trying to untangle that mess is not going to be made easier by mandating > the calls of that helper of yours - if anything, it makes the whole > thing harder to massage. > > It needs to be dealt with, no arguments here, but that's not a good > starting point for that... I've taken several stabs at that, never > got anywhere satisfactory with those ;-/ I'll try to dig out the > notes/existing attempts at patch series; if you are willing to participate > in discussing those and sorting the whole thing out, you are very welcome; > just ping me in a couple of days. Will do. Thanks, Amir.