[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <fcd082c0640d0f8eef3d0d2a17a62c9446a77cf2.1448283890.git.jslaby@suse.cz>
Date: Mon, 23 Nov 2015 14:12:13 +0100
From: Jiri Slaby <jslaby@...e.cz>
To: stable@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, "Yan, Zheng" <ukernel@...il.com>,
"Yan, Zheng" <zyan@...hat.com>, Jiri Slaby <jslaby@...e.cz>
Subject: [PATCH 3.12 52/72] ceph: make sure request isn't in any waiting list when kicking request.
From: "Yan, Zheng" <ukernel@...il.com>
3.12-stable review patch. If anyone has any objections, please let me know.
===============
commit 03974e8177b36d672eb59658f976f03cb77c1129 upstream.
we may corrupt waiting list if a request in the waiting list is kicked.
Signed-off-by: "Yan, Zheng" <zyan@...hat.com>
Reviewed-by: Sage Weil <sage@...hat.com>
Signed-off-by: Jiri Slaby <jslaby@...e.cz>
---
fs/ceph/mds_client.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c
index 6f1161324f91..3e07f82a3c9d 100644
--- a/fs/ceph/mds_client.c
+++ b/fs/ceph/mds_client.c
@@ -1985,6 +1985,7 @@ static void kick_requests(struct ceph_mds_client *mdsc, int mds)
if (req->r_session &&
req->r_session->s_mds == mds) {
dout(" kicking tid %llu\n", req->r_tid);
+ list_del_init(&req->r_wait);
__do_request(mdsc, req);
}
}
--
2.6.3
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists