linux/fs
Andreas Gruenbacher be285c712b [patch 3/3] vfs: make d_path() consistent across mount operations
The path that __d_path() computes can become slightly inconsistent when it
races with mount operations: it grabs the vfsmount_lock when traversing mount
points but immediately drops it again, only to re-grab it when it reaches the
next mount point.  The result is that the filename computed is not always
consisent, and the file may never have had that name. (This is unlikely, but
still possible.)

Fix this by grabbing the vfsmount_lock for the whole duration of
__d_path().

Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
Signed-off-by: John Johansen <jjohansen@suse.de>
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Acked-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2008-06-23 13:06:13 -04:00
..
9p
adfs
affs
afs Fix various old email addresses for dwmw2 2008-06-06 11:29:10 -07:00
autofs
autofs4
befs byteorder: don't directly include linux/byteorder/generic.h 2008-05-16 12:01:45 -07:00
bfs
cifs Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 2008-06-11 09:45:51 -07:00
coda
configfs
cramfs
debugfs
devpts
dlm dlm: fix plock dev_write return value 2008-05-19 15:37:27 -05:00
ecryptfs eCryptfs: remove unnecessary page decrypt call 2008-06-06 11:29:09 -07:00
efs
exportfs
ext2
ext3 ext3: fix online resize bug 2008-06-06 11:29:13 -07:00
ext4 Ext4: Fix online resize block group descriptor corruption 2008-06-20 11:48:48 -04:00
fat fat: relax the permission check of fat_setattr() 2008-06-12 18:05:39 -07:00
freevxfs
fuse fuse: fix thinko in max I/O size calucation 2008-06-17 18:08:10 -07:00
gfs2
hfs
hfsplus
hostfs
hpfs
hppfs fix hppfs Makefile breakage 2008-05-21 16:55:58 -07:00
hugetlbfs
isofs
jbd
jbd2 jbd2: Fix barrier fallback code to re-lock the buffer head 2008-06-03 22:31:11 -04:00
jffs2
jfs
lockd
minix
msdos
ncpfs
nfs nfs: make nfs4_drop_state_owner() static 2008-05-16 09:43:31 -07:00
nfs_common
nfsd nfsd: reorder printk in do_probe_callback to avoid use-after-free 2008-05-18 19:13:07 -04:00
nls
ntfs ntfs: le*_add_cpu conversion 2008-05-24 09:56:08 -07:00
ocfs2 ocfs2: Remove ->hangup() from stack glue operations. 2008-06-16 10:46:52 -07:00
openpromfs
partitions
proc pagemap: fix large pages in pagemap 2008-06-12 18:05:41 -07:00
qnx4
ramfs
reiserfs
romfs
smbfs
sysfs sysfs: remove error messages for -EEXIST case 2008-05-14 22:34:16 -07:00
sysv
udf udf: restore UDFFS_DEBUG to being undefined by default 2008-06-16 14:24:36 +02:00
ufs
vfat
xfs [XFS] Fix memory corruption with small buffer reads 2008-05-23 18:12:49 +10:00
aio.c uml: activate_mm: remove the dead PF_BORROWED_MM check 2008-06-06 11:36:22 -07:00
anon_inodes.c
attr.c
bad_inode.c
binfmt_aout.c
binfmt_elf_fdpic.c nommu: fix ksize() abuse 2008-06-06 11:29:13 -07:00
binfmt_elf.c Remove last traces of a.out support from ELF loader. 2008-06-16 10:20:57 -07:00
binfmt_em86.c
binfmt_flat.c nommu: fix ksize() abuse 2008-06-06 11:29:13 -07:00
binfmt_misc.c
binfmt_script.c
binfmt_som.c
bio.c
block_dev.c [PATCH] fix cgroup-inflicted breakage in block_dev.c 2008-06-23 08:30:55 -04:00
buffer.c
char_dev.c
compat_binfmt_elf.c
compat_ioctl.c
compat.c [PATCH] get rid of leak in compat_execve() 2008-05-16 17:23:05 -04:00
dcache.c [patch 3/3] vfs: make d_path() consistent across mount operations 2008-06-23 13:06:13 -04:00
dcookies.c
direct-io.c
dnotify.c
dquot.c
drop_caches.c
eventfd.c
eventpoll.c
exec.c Include <asm/a.out.h> in fs/exec.c only for Alpha. 2008-06-16 10:20:57 -07:00
fcntl.c
fifo.c
file_table.c
file.c [PATCH] avoid multiplication overflows and signedness issues for max_fds 2008-05-16 17:22:52 -04:00
filesystems.c
fs-writeback.c
generic_acl.c
inode.c
inotify_user.c
inotify.c
internal.h
ioctl.c
ioprio.c
Kconfig
Kconfig.binfmt frv: don't offer BINFMT_FLAT 2008-06-06 11:29:08 -07:00
libfs.c introduce memory_read_from_buffer() 2008-06-06 11:29:11 -07:00
locks.c [patch 4/4] flock: remove unused fields from file_lock_operations 2008-06-23 11:52:30 -04:00
Makefile
mbcache.c
mpage.c
namei.c [patch 3/4] vfs: fix ERR_PTR abuse in generic_readlink 2008-06-23 11:52:30 -04:00
namespace.c
nfsctl.c
no-block.c
open.c
pipe.c [patch 1/4] vfs: path_{get,put}() cleanups 2008-06-23 11:52:29 -04:00
pnode.c
pnode.h
posix_acl.c
quota_v1.c
quota_v2.c
quota.c
read_write.c
read_write.h
readdir.c
select.c
seq_file.c
signalfd.c
splice.c splice: handle try_to_release_page() failure 2008-05-28 14:49:27 +02:00
stack.c
stat.c
super.c
sync.c
timerfd.c
utimes.c [patch for 2.6.26 4/4] vfs: utimensat(): fix write access check for futimens() 2008-06-23 08:43:52 -04:00
xattr_acl.c
xattr.c