On 5/30/24 5:00 PM, Miklos Szeredi wrote:
> On Thu, 30 May 2024 at 05:20, Jingbo Xu <jeffl...@linux.alibaba.com> 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.
Okay, fair enough. Feel free to add:
Reviewed-by: Jingbo Xu <jeffl...@linux.alibaba.com>
--
Thanks,
Jingbo