On Thu, Oct 13, 2022 at 03:27:19PM -0700, Stephen Brennan wrote: > So I have two more narrowly scoped strategies to improve the situation. Both are > included in the hacky, awful patch below. > > First, is to let __fsnotify_update_child_dentry_flags() sleep. This means nobody > is holding the spinlock for several seconds at a time. We can actually achieve > this via a cursor, the same way that simple_readdir() is implemented. I think > this might require moving the declaration of d_alloc_cursor() and maybe > exporting it. I had to #include fs/internal.h which is not ok. Er... Won't that expose every filesystem to having to deal with cursors? Currently it's entirely up to the filesystem in question and I wouldn't be a dime on everyone being ready to cope with such surprises...