On (25/06/06 10:26), Miklos Szeredi wrote: > > @@ -241,7 +241,7 @@ static struct fuse_req *fuse_get_req(struct fuse_conn *fc, bool for_background) > > > > if (fuse_block_alloc(fc, for_background)) { > > err = -EINTR; > > - if (wait_event_killable_exclusive(fc->blocked_waitq, > > + if (wait_event_freezable_killable_exclusive(fc->blocked_waitq, > > !fuse_block_alloc(fc, for_background))) > > goto out; > > } > > This looks fine. We can turn each wait into a freezable one inside > fuse. But that still would leave core locks (inode lock, rename lock, > page lock, etc) unfreezable. Turning those into freezable isn't > realistic... > > But a partial solution might still be better than no solution. Thanks Miklos, I sent out a simple patch set [1] [1] https://lore.kernel.org/linux-kernel/20250610045321.4030262-1-senozhatsky@xxxxxxxxxxxx