diff --git a/[refs] b/[refs] index f45d3691adb9..c770847e1194 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d96d60498ff748c5a88c72ec5d1cc4ba9a583e7e +refs/heads/master: 393f66209669ad23f4f6d4191234c1df4367df3c diff --git a/trunk/fs/ceph/dir.c b/trunk/fs/ceph/dir.c index 5107384ee029..8a9116e15b70 100644 --- a/trunk/fs/ceph/dir.c +++ b/trunk/fs/ceph/dir.c @@ -288,8 +288,10 @@ static int ceph_readdir(struct file *filp, void *dirent, filldir_t filldir) CEPH_MDS_OP_LSSNAP : CEPH_MDS_OP_READDIR; /* discard old result, if any */ - if (fi->last_readdir) + if (fi->last_readdir) { ceph_mdsc_put_request(fi->last_readdir); + fi->last_readdir = NULL; + } /* requery frag tree, as the frag topology may have changed */ frag = ceph_choose_frag(ceph_inode(inode), frag, NULL, NULL);