On Fri, 26 Jan 2024 at 14:09, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > > I'm not at my computer, but when I tried deleting that, it caused issues with the lookup code. The VSF layer should be serializing all lookups of the same name. If it didn't, we'd have serious issues on other filesystems. So you should never get more than one concurrent lookup of one particular entry, and as long as the dentry exists, you should then not get a new one. It's one of the things that the VFS layer does to make things simple for the filesystem. But it's worth noting that that is about *one* entry. You can get concurrent lookups in the same directory for different names. Another thing that worries me is that odd locking that releases the lock in the middle. I don't understand why you release the tracefs_mutex() over create_file(), for example. There's a lot of "take, drop, re-take, re-drop" of that mutex that seems strange. Linus