[RHEL7,COMMIT] fuse: Remove bogus list_del_init() from-fuse_request_send_background

Submitted by Konstantin Khorenko on April 30, 2019, 11:35 a.m.

Details

Message ID 201904301135.x3UBZY28021064@finist-ce7.sw.ru
State New
Series "fuse:Backport of ms locking patches part 2"
Headers show

Commit Message

Konstantin Khorenko April 30, 2019, 11:35 a.m.
The commit is pushed to "branch-rh7-3.10.0-957.12.1.vz7.95.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-957.12.1.vz7.95.2
------>
commit 0397708ea8335fe6c3812c78c169d573b558ce9f
Author: Kirill Tkhai <ktkhai@virtuozzo.com>
Date:   Tue Apr 30 14:35:34 2019 +0300

    fuse: Remove bogus list_del_init() from-fuse_request_send_background
    
    req can't be linked there.
    
    Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
    
    =====================
    Patchset description:
    
    fuse: Backport of ms locking patches part 2
    
    Here is backport of locking patches: introducing of fc->bg_lock and fi->lock.
    
    This may need additional changes for kio and NOT verified for fast-path.
    
    Reviewed-by: Pavel Butsykin <pbutsykin@virtuozzo.com>
    
    Kirill Tkhai (9):
          fuse: introduce fc->bg_lock
          fuse: Remove bogus list_del_init() from-fuse_request_send_background
          fuse: do not take fc->lock in fuse_request_send_background()
          fuse: Add fuse_inode argument to fuse_prepare_release()
          fuse: Convert fc->attr_version into atomic64_t
          fuse: Introduce fi->lock to protect write related fields
          fuse: Protect fi->nlookup with fi->lock
          fuse: Protect ff->reserved_req via corresponding fi->lock
          fuse: do not take fc->lock in fuse_request_send_background() - fixup
---
 fs/fuse/dev.c | 1 -
 1 file changed, 1 deletion(-)

Patch hide | download patch | download mbox

diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c
index 1ee112b1cd7e..1ffc10ff18ba 100644
--- a/fs/fuse/dev.c
+++ b/fs/fuse/dev.c
@@ -654,7 +654,6 @@  void fuse_request_send_background(struct fuse_conn *fc, struct fuse_req *req)
 		req->out.h.error = -EIO;
 		__clear_bit(FR_BACKGROUND, &req->flags);
 		__clear_bit(FR_PENDING, &req->flags);
-		list_del_init(&req->list);
 		spin_unlock(&fc->lock);
 		request_end(fc, req);
 	} else if (fc->connected) {