From fcd082c0640d0f8eef3d0d2a17a62c9446a77cf2 Mon Sep 17 00:00:00 2001 From: "Yan, Zheng" Date: Thu, 11 Sep 2014 14:28:56 +0800 Subject: ceph: make sure request isn't in any waiting list when kicking request. commit 03974e8177b36d672eb59658f976f03cb77c1129 upstream. we may corrupt waiting list if a request in the waiting list is kicked. Signed-off-by: "Yan, Zheng" Reviewed-by: Sage Weil Signed-off-by: Jiri Slaby --- 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); } } -- cgit v1.2.3