• Yan, Zheng's avatar
    ceph: fix __dcache_readdir() · 4d5f5df6
    Yan, Zheng authored
    If directory is fragmented, readdir() read its dirfrags one by one.
    After reading all dirfrags, the corresponding dentries are sorted in
    (frag_t, off) order in the dcache. If dentries of a directory are all
    cached, __dcache_readdir() can use the cached dentries to satisfy
    readdir syscall. But when checking if a given dentry is after the
    position of readdir, __dcache_readdir() compares numerical value of
    frag_t directly. This is wrong, it should use ceph_frag_compare().
    Signed-off-by: default avatarYan, Zheng <zheng.z.yan@intel.com>
    4d5f5df6
dir.c 35.8 KB