From 5ffc049c9578bbc6154a322e4a153329551bb9a9 Mon Sep 17 00:00:00 2001 From: "Yan, Zheng" Date: Mon, 3 Mar 2014 09:20:44 +0800 Subject: [PATCH] ceph: let MDS adjust readdir 'frag' If readdir 'frag' is adjusted, readdir 'offset' should be reset. Otherwise some dentries may be lost when readdir and fragmenting directory happen at the some. Another way to fix this issue is let MDS adjust readdir 'frag'. The code that handles MDS reply reset the readdir 'offset' if the readdir reply is different than the requested one. Signed-off-by: Yan, Zheng --- fs/ceph/dir.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/fs/ceph/dir.c b/fs/ceph/dir.c index 8ce8833e9c028..e9918a0306d19 100644 --- a/fs/ceph/dir.c +++ b/fs/ceph/dir.c @@ -322,9 +322,6 @@ more: fi->last_readdir = NULL; } - /* requery frag tree, as the frag topology may have changed */ - frag = ceph_choose_frag(ceph_inode(inode), frag, NULL, NULL); - dout("readdir fetching %llx.%llx frag %x offset '%s'\n", ceph_vinop(inode), frag, fi->last_name); req = ceph_mdsc_create_request(mdsc, op, USE_AUTH_MDS); -- 2.39.5