alistair23-linux/fs/hpfs
Al Viro 31abdab9c1 hpfs: deadlock and race in directory lseek()
For one thing, there's an ABBA deadlock on hpfs fs-wide lock and i_mutex
in hpfs_dir_lseek() - there's a lot of methods that grab the former with
the caller already holding the latter, so it must take i_mutex first.

For another, locking the damn thing, carefully validating the offset,
then dropping locks and assigning the offset is obviously racy.

Moreover, we _must_ do hpfs_add_pos(), or the machinery in dnode.c
won't modify the sucker on B-tree surgeries.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2013-05-31 15:17:43 -04:00
..
alloc.c
anode.c hpfs: convert to use leXX_add_cpu() 2012-10-06 03:05:08 +09:00
buffer.c
dentry.c
dir.c hpfs: deadlock and race in directory lseek() 2013-05-31 15:17:43 -04:00
dnode.c hpfs: convert to use leXX_add_cpu() 2012-10-06 03:05:08 +09:00
ea.c
file.c hpfs: move setting hpfs-private i_dirty to ->write_end() 2013-04-09 14:12:55 -04:00
hpfs.h
hpfs_fn.h hpfs: drop vmtruncate 2012-12-20 18:40:00 -05:00
inode.c Merge branch 'master' into for-next 2013-01-29 10:48:30 +01:00
Kconfig
Makefile
map.c
name.c
namei.c userns: Convert hpfs to use kuid and kgid where appropriate 2012-09-21 03:13:32 -07:00
super.c fs: Limit sys_mount to only request filesystem modules. (Part 3) 2013-03-11 07:09:48 -07:00