diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c index c2af8042f176..34976b42f3e1 100644 --- a/fs/fuse/dev.c +++ b/fs/fuse/dev.c @@ -1312,8 +1312,8 @@ static ssize_t fuse_dev_do_read(struct fuse_dev *fud, struct file *file, } list_move_tail(&req->list, &fpq->processing); __fuse_get_request(req); - spin_unlock(&fpq->lock); set_bit(FR_SENT, &req->flags); + spin_unlock(&fpq->lock); /* matches barrier in request_wait_answer() */ smp_mb__after_atomic(); if (test_bit(FR_INTERRUPTED, &req->flags))