On Sat, 15 Apr 2023 at 15:15, Jens Axboe <axboe@xxxxxxxxx> wrote: > Yep, that is pretty much it. If all writes to that inode are serialized > by a lock on the fs side, then we'll get a lot of contention on that > mutex. And since, originally, nothing supported async writes, everything > would get punted to the io-wq workers. io_uring added per-inode hashing > for this, so that any punt to io-wq of a write would get serialized. > > IOW, it's an efficiency thing, not a correctness thing. We could still get a performance regression if the majority of writes still trigger the exclusive locking. The questions are: - how often does that happen in real life? - how bad the performance regression would be? Without first attempting to answer those questions, I'd be reluctant to add FMODE_DIO_PARALLEL_WRITE to fuse. Thanks, Miklos