diff options
author | Yan, Zheng <zyan@redhat.com> | 2015-04-07 09:51:08 +0200 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2015-04-22 17:33:31 +0200 |
commit | c0bd50e2eeddf139d8f61e709d7003210301e93a (patch) | |
tree | abb39df3a25758ce80e0d6f19b821d208dcd640e | |
parent | ceph: hold on to exclusive caps on complete directories (diff) | |
download | linux-c0bd50e2eeddf139d8f61e709d7003210301e93a.tar.xz linux-c0bd50e2eeddf139d8f61e709d7003210301e93a.zip |
ceph: fix null pointer dereference in send_mds_reconnect()
sb->s_root can be null when umounting
Signed-off-by: Yan, Zheng <zyan@redhat.com>
-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 fd5585b8d382..0a2eb32ffe43 100644 --- a/fs/ceph/mds_client.c +++ b/fs/ceph/mds_client.c @@ -2892,7 +2892,8 @@ static void send_mds_reconnect(struct ceph_mds_client *mdsc, spin_unlock(&session->s_cap_lock); /* trim unused caps to reduce MDS's cache rejoin time */ - shrink_dcache_parent(mdsc->fsc->sb->s_root); + if (mdsc->fsc->sb->s_root) + shrink_dcache_parent(mdsc->fsc->sb->s_root); ceph_con_close(&session->s_con); ceph_con_open(&session->s_con, |