X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=kernel%2Ffs%2Ffuse%2Fdev.c;h=9096d44eb22155493176c89ede97234ba50e1c06;hb=52f993b8e89487ec9ee15a7fb4979e0f09a45b27;hp=ebb5e37455a07acd86f5fbf1b76d474e99b937fb;hpb=e09b41010ba33a20a87472ee821fa407a5b8da36;p=kvmfornfv.git diff --git a/kernel/fs/fuse/dev.c b/kernel/fs/fuse/dev.c index ebb5e3745..9096d44eb 100644 --- a/kernel/fs/fuse/dev.c +++ b/kernel/fs/fuse/dev.c @@ -2083,7 +2083,6 @@ static void end_requests(struct fuse_conn *fc, struct list_head *head) struct fuse_req *req; req = list_entry(head->next, struct fuse_req, list); req->out.h.error = -ECONNABORTED; - clear_bit(FR_PENDING, &req->flags); clear_bit(FR_SENT, &req->flags); list_del_init(&req->list); request_end(fc, req); @@ -2161,6 +2160,8 @@ void fuse_abort_conn(struct fuse_conn *fc) spin_lock(&fiq->waitq.lock); fiq->connected = 0; list_splice_init(&fiq->pending, &to_end2); + list_for_each_entry(req, &to_end2, list) + clear_bit(FR_PENDING, &req->flags); while (forget_pending(fiq)) kfree(dequeue_forget(fiq, 1, NULL)); wake_up_all_locked(&fiq->waitq);