diff options
-rw-r--r-- | fs/ceph/mds_client.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ceph/mds_client.c b/fs/ceph/mds_client.c index 8ef79266d064..d90861f45210 100644 --- a/fs/ceph/mds_client.c +++ b/fs/ceph/mds_client.c | |||
@@ -644,6 +644,8 @@ static void __unregister_request(struct ceph_mds_client *mdsc, | |||
644 | req->r_unsafe_dir = NULL; | 644 | req->r_unsafe_dir = NULL; |
645 | } | 645 | } |
646 | 646 | ||
647 | complete_all(&req->r_safe_completion); | ||
648 | |||
647 | ceph_mdsc_put_request(req); | 649 | ceph_mdsc_put_request(req); |
648 | } | 650 | } |
649 | 651 | ||
@@ -2186,7 +2188,6 @@ static void handle_reply(struct ceph_mds_session *session, struct ceph_msg *msg) | |||
2186 | if (head->safe) { | 2188 | if (head->safe) { |
2187 | req->r_got_safe = true; | 2189 | req->r_got_safe = true; |
2188 | __unregister_request(mdsc, req); | 2190 | __unregister_request(mdsc, req); |
2189 | complete_all(&req->r_safe_completion); | ||
2190 | 2191 | ||
2191 | if (req->r_got_unsafe) { | 2192 | if (req->r_got_unsafe) { |
2192 | /* | 2193 | /* |