From: Yan, Zheng Date: Thu, 11 Sep 2014 06:28:56 +0000 (+0800) Subject: ceph: make sure request isn't in any waiting list when kicking request. X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=03974e8177b36d672eb59658f976f03cb77c1129;p=GitHub%2Fexynos8895%2Fandroid_kernel_samsung_universal8895.git ceph: make sure request isn't in any waiting list when kicking request. we may corrupt waiting list if a request in the waiting list is kicked. Signed-off-by: Yan, Zheng Reviewed-by: Sage Weil --- diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c index 267ba4496dc8..a17fc49c9948 100644 --- a/fs/ceph/mds_client.c +++ b/fs/ceph/mds_client.c @@ -2078,6 +2078,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); } }