diff --git a/[refs] b/[refs] index 7814b594ce48..446da5c174e4 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d69ed05a80f23b25f06e73af9b7e701ce4900edc +refs/heads/master: 17c688c3dfffc274c87be00033da0050bb6eefc0 diff --git a/trunk/fs/ceph/mds_client.c b/trunk/fs/ceph/mds_client.c index 1766947fc07a..3ab79f6c4ce8 100644 --- a/trunk/fs/ceph/mds_client.c +++ b/trunk/fs/ceph/mds_client.c @@ -2783,6 +2783,12 @@ void ceph_mdsc_pre_umount(struct ceph_mds_client *mdsc) drop_leases(mdsc); ceph_flush_dirty_caps(mdsc); wait_requests(mdsc); + + /* + * wait for reply handlers to drop their request refs and + * their inode/dcache refs + */ + ceph_msgr_flush(); } /*