diff --git a/fs/ceph/dir.c b/fs/ceph/dir.c index 4f7467961b09f9557ccfa8fbe3505ed8bb8772fb..32ef543672247127186ff4e9a7b34e3ac36ab1fd 100644 --- a/fs/ceph/dir.c +++ b/fs/ceph/dir.c @@ -131,6 +131,7 @@ static int __dcache_readdir(struct file *filp, goto out_unlock; } if (!d_unhashed(dentry) && dentry->d_inode && + ceph_snap(dentry->d_inode) != CEPH_SNAPDIR && filp->f_pos <= di->offset) break; dout(" skipping %p %.*s at %llu (%llu)%s%s\n", dentry,