On Tue, 13 Feb 2024 at 08:46, Christian Brauner <brauner@xxxxxxxxxx> wrote: > > * Each struct pid will refer to a different inode but the same struct > pid will refer to the same inode if it's opened multiple times. In > contrast to now where each struct pid refers to the same inode. The games for this are disgusting. This needs to be done some other way. Yes, I realize that you copied what Al did for nsfs. It's still entirely disgusting. To quote the Romans: "Quod licet Al, non licet bovi". It might be a *bit* less disgusting if we hid the casting games with "atomic_long_xyz" by having nice wrappers that do "atomic_ptr_xyz". Because having an "atomic_long_t" and stuffing a dentry pointer in it is just too ugly for words. But I do think that if we're going to do the same disgusting thing that nsfs does, then the whole "keep one dentry" logic needs to be shared between the two filesystem. Not be two different copies of the same inscrutable thing. Because they *are* the same thing, although you wrote the pidfs copy slightly differently. I was ok with one incredibly ugly thing, but I'm not ok with having it copied and duplicated. Linus