• Hou Tao's avatar
    fuse: set FR_PENDING atomically in fuse_resend() · 42815f8a
    Hou Tao authored
    When fuse_resend() moves the requests from processing lists to pending
    list, it uses __set_bit() to set FR_PENDING bit in req->flags.
    
    Using __set_bit() is not safe, because other functions may update
    req->flags concurrently (e.g., request_wait_answer() may call
    set_bit(FR_INTERRUPTED, &flags)).
    
    Fix it by using set_bit() instead.
    
    Fixes: 760eac73 ("fuse: Introduce a new notification type for resend pending requests")
    Signed-off-by: default avatarHou Tao <houtao1@huawei.com>
    Signed-off-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
    42815f8a
dev.c 54.7 KB