On Thu, 30 May 2024 at 05:20, Jingbo Xu <jefflexu@xxxxxxxxxxxxxxxxx> wrote: > > + if (test_bit(FR_FINISHED, &req->flags)) { > > + list_del_init(&req->intr_entry); > > + spin_unlock(&fiq->lock ^ > missing "return" here? Well spotted. Thanks. > > - err = -ENODEV; > > - spin_unlock(&fiq->lock); > > - fuse_put_request(req); > > - } > > + fuse_send_one(fiq, req); > > > > - return err; > > + return 0; > > } > > There's a minor changed behavior visible to users. Prior to the patch, > the FUSE_NOTIFY_RETRIEVE will returns -ENODEV when the connection is > aborted, but now it returns 0. > > It seems only example/notify_store_retrieve.c has used > FUSE_NOTIFY_RETRIEVE in libfuse. I'm not sure if this change really > matters. It will return -ENOTCONN from fuse_simple_notify_reply() -> fuse_get_req(). The -ENODEV would be a very short transient error during the abort, so it doesn't matter. Thanks, Miklos