1
linux/fs/ext4
Theodore Ts'o 3c37fc86d2 ext4: Fix duplicate entries returned from getdents() system call
Fix a regression caused by commit d0156417, "ext4: fix ext4_dx_readdir
hash collision handling", where deleting files in a large directory
(requiring more than one getdents system call), results in some
filenames being returned twice.  This was caused by a failure to
update info->curr_hash and info->curr_minor_hash, so that if the
directory had gotten modified since the last getdents() system call
(as would be the case if the user is running "rm -r" or "git clean"),
a directory entry would get returned twice to the userspace.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>

This patch fixes the bug reported by Markus Trippelsdorf at:
http://bugzilla.kernel.org/show_bug.cgi?id=11844

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de>
2008-10-25 22:37:55 -04:00
..
acl.c [PATCH] sanitize ->permission() prototype 2008-07-26 20:53:14 -04:00
acl.h ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
balloc.c ext4: Don't reuse released data blocks until transaction commits 2008-10-10 20:13:31 -04:00
bitmap.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
dir.c ext4: Fix duplicate entries returned from getdents() system call 2008-10-25 22:37:55 -04:00
ext4_extents.h Hook ext4 to the vfs fiemap interface. 2008-10-07 00:46:36 -04:00
ext4_i.h ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
ext4_jbd2.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
ext4_jbd2.h ext4: journal credits calulation cleanup and fix for non-extent writepage 2008-08-19 22:16:07 -04:00
ext4_sb.h ext4: Replace hackish ext4_mb_poll_new_transaction with commit callback 2008-10-16 20:00:24 -04:00
ext4.h ext4: Remove unused mount options: nomballoc, mballoc, nocheck 2008-10-17 07:22:35 -04:00
extents.c Hook ext4 to the vfs fiemap interface. 2008-10-07 00:46:36 -04:00
file.c ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
fsync.c ext4: Add debugging markers that can be used by systemtap 2008-10-05 20:50:06 -04:00
group.h ext4: Rename read_block_bitmap() to ext4_read_block_bitmap() 2008-07-11 19:27:31 -04:00
hash.c ext4: Fix whitespace checkpatch warnings/errors 2008-09-08 22:25:24 -04:00
ialloc.c ext4: fix initialization of UNINIT bitmap blocks 2008-10-10 08:09:18 -04:00
inode.c ext4: Remove automatic enabling of the HUGE_FILE feature flag 2008-10-16 22:50:48 -04:00
ioctl.c ext4: add checks for errors from jbd2 2008-10-10 20:29:21 -04:00
Kconfig fs/Kconfig: move ext2, ext3, ext4, JBD, JBD2 out 2008-10-20 11:43:59 -07:00
Makefile ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
mballoc.c ext4: Remove compile warnings when building w/o CONFIG_PROC_FS 2008-10-17 14:58:45 -04:00
mballoc.h ext4: Replace hackish ext4_mb_poll_new_transaction with commit callback 2008-10-16 20:00:24 -04:00
migrate.c ext4: elevate write count for migrate ioctl 2008-09-13 12:52:26 -04:00
namei.c ext4: remove unused variable in ext4_get_parent 2008-10-23 12:03:23 -07:00
namei.h
resize.c ext4: Remove old legacy block allocator 2008-10-10 09:40:52 -04:00
super.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev 2008-10-23 10:23:07 -07:00
symlink.c ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
xattr_security.c ext4: move headers out of include/linux 2008-04-29 18:13:32 -04:00
xattr_trusted.c ext4: remove double definitions of xattr macros 2008-07-11 19:27:31 -04:00
xattr_user.c ext4: remove double definitions of xattr macros 2008-07-11 19:27:31 -04:00
xattr.c ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00
xattr.h ext4: Rename ext4dev to ext4 2008-10-10 20:02:48 -04:00