summaryrefslogtreecommitdiff
path: root/fs/ext4/ialloc.c
diff options
context:
space:
mode:
authorTao Ma <boyu.mt@taobao.com>2013-04-20 01:55:33 +0400
committerTheodore Ts'o <tytso@mit.edu>2013-04-20 01:55:33 +0400
commitc4d8b0235aa98f8c26bf94d308be3fdd24154572 (patch)
tree9499f186e1e65df32a822d19cdcd92addb33e4a6 /fs/ext4/ialloc.c
parent8af0f08227977079f8f227e74d27c59db2ab84f6 (diff)
downloadlinux-c4d8b0235aa98f8c26bf94d308be3fdd24154572.tar.xz
ext4: fix readdir error in case inline_data+^dir_index.
Zach reported a problem that if inline data is enabled, we don't tell the difference between the offset of '.' and '..'. And a getdents will fail if the user only want to get '.'. And what's worse, we may meet with duplicate dir entries as the offset for inline dir and non-inline one is quite different. This patch just try to resolve this problem if dir_index is disabled. In this case, f_pos is the real offset with the dir block, so for inline dir, we just pretend as if we are a dir block and returns the offset like a norml dir block does. Reported-by: Zach Brown <zab@redhat.com> Signed-off-by: Tao Ma <boyu.mt@taobao.com> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/ialloc.c')
0 files changed, 0 insertions, 0 deletions