original_kernel/fs
Trond Myklebust 5ac5f9d1ce [PATCH] NLM: Fix the NLM_GRANTED callback checks
If 2 threads attached to the same process are blocking on different locks on
different files (maybe even on different servers) but have the same lock
arguments (i.e.  same offset+length - actually quite common, since most
processes try to lock the entire file) then the first GRANTED call that wakes
one up will also wake the other.

Currently when the NLM_GRANTED callback comes in, lockd walks the list of
blocked locks in search of a match to the lock that the NLM server has
granted.  Although it checks the lock pid, start and end, it fails to check
the filehandle and the server address.

By checking the filehandle and server IP address, we ensure that this only
happens if the locks truly are referencing the same file.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-02-14 16:09:34 -08:00
..
9p [PATCH] v9fs: fix corner cases when flushing request 2006-02-03 08:32:06 -08:00
adfs
affs
afs
autofs
autofs4
befs
bfs
cifs [CIFS] Remove compiler warning 2006-01-27 18:36:11 -08:00
coda
configfs [PATCH] BUG_ON() Conversion in fs/configfs/ 2006-02-03 14:03:09 -08:00
cramfs
debugfs [PATCH] debugfs: trivial comment fix 2006-02-06 12:17:18 -08:00
devfs
devpts
efs
exportfs [PATCH] exportfs: add find_acceptable_alias helper 2006-01-18 19:20:28 -08:00
ext2 [PATCH] quota: fix error code for ext2_new_inode() 2006-02-03 08:32:09 -08:00
ext3 [PATCH] Fix two ext[23] uninitialized warnings 2006-02-03 08:32:05 -08:00
fat [PATCH] fat: Fix truncate() write ordering 2006-02-03 08:32:10 -08:00
freevxfs
fuse [PATCH] fuse: fix request_end() vs fuse_reset_request() race 2006-02-05 11:06:51 -08:00
hfs
hfsplus
hostfs
hpfs
hppfs
hugetlbfs [PATCH] mm: hugepage accounting fix 2006-02-01 08:53:15 -08:00
isofs
jbd [PATCH] jbd: revert checkpoint list changes 2006-02-14 16:09:34 -08:00
jffs [PATCH] fs/jffs/intrep.c: 255 is unsigned char 2006-02-03 08:32:05 -08:00
jffs2
jfs
lockd [PATCH] NLM: Fix the NLM_GRANTED callback checks 2006-02-14 16:09:34 -08:00
minix
msdos
ncpfs
nfs [PATCH] nfsroot port= parameter fix [backport of 2.4 fix] 2006-02-07 21:00:42 -05:00
nfs_common
nfsd [PATCH] knfsd: fix nfs4_open lock leak 2006-02-07 16:12:31 -08:00
nls
ntfs
ocfs2 [PATCH] ocfs2: don't wait on recovery when locking journal 2006-02-03 14:05:14 -08:00
openpromfs
partitions
proc [PATCH] disable per cpu intr in /proc/stat 2006-02-03 08:32:07 -08:00
qnx4
ramfs
reiserfs [PATCH] reiserfs: fix potential (unlikely) oops in reiserfs_get_acl 2006-02-13 08:56:01 -08:00
relayfs
romfs
smbfs [PATCH] smbfs readdir vs signal fix 2006-02-01 08:53:09 -08:00
sysfs
sysv
udf [PATCH] UDF: Fix issues reported by Coverity in namei.c 2006-02-03 08:32:11 -08:00
ufs [PATCH] ufs: fix hang during `rm' 2006-02-03 08:32:04 -08:00
vfat
xfs [XFS] Fix missing inode atime update from the utime syscall. 2006-02-07 20:27:44 +11:00
Kconfig o Remove confusing Kconfig text for CONFIGFS_FS. 2006-02-03 13:47:17 -08:00
Kconfig.binfmt
Makefile
aio.c
attr.c
bad_inode.c
binfmt_aout.c
binfmt_elf.c
binfmt_elf_fdpic.c
binfmt_em86.c
binfmt_flat.c
binfmt_misc.c
binfmt_script.c
binfmt_som.c
bio.c [BLOCK] A few kerneldoc fixups 2006-01-31 15:24:34 +01:00
block_dev.c
buffer.c [PATCH] Trivial optimization of ll_rw_block() 2006-02-03 08:32:10 -08:00
char_dev.c
compat.c [PATCH] select: fix returned timeval 2006-02-11 21:41:11 -08:00
compat_ioctl.c [PATCH] compat_ioctl __user annotations 2006-02-08 01:04:01 -05:00
dcache.c [PATCH] make "struct d_cookie" depend on CONFIG_PROFILING 2006-02-03 08:32:04 -08:00
dcookies.c
direct-io.c [PATCH] fix O_DIRECT read of last block in a sparse file 2006-02-03 08:32:07 -08:00
dnotify.c
dquot.c
drop_caches.c
eventpoll.c
exec.c [PATCH] vfs: *at functions: core 2006-01-18 19:20:29 -08:00
fcntl.c [PATCH] fcntl F_SETFL and read-only IS_APPEND files 2006-02-03 08:32:07 -08:00
fifo.c
file.c [PATCH] percpu data: only iterate over possible CPUs 2006-02-05 11:06:51 -08:00
file_table.c
filesystems.c
fs-writeback.c
inode.c [PATCH] DocBook: fix some kernel-doc comments in fs and block 2006-02-01 08:53:27 -08:00
inotify.c [PATCH] inotify: fix one-shot support 2006-02-07 16:12:33 -08:00
ioctl.c
ioprio.c
libfs.c [PATCH] debugfs: hard link count wrong 2006-02-03 08:32:11 -08:00
locks.c
mbcache.c
mpage.c
namei.c [PATCH] Fix do_path_lookup() to add the check for error in link_path_walk() 2006-02-07 16:12:32 -08:00
namespace.c [PATCH] umount_tree() decrements mount count on wrong dentry 2006-02-07 21:01:15 -05:00
nfsctl.c [PATCH] EDAC: atomic scrub operations 2006-01-18 19:20:30 -08:00
open.c [PATCH] vfs: *at functions: core 2006-01-18 19:20:29 -08:00
pipe.c
pnode.c
pnode.h
posix_acl.c
quota.c
quota_v1.c
quota_v2.c [PATCH] quota_v2: printk warning fixes 2006-02-03 08:32:03 -08:00
read_write.c
readdir.c
select.c [PATCH] select: fix returned timeval 2006-02-11 21:41:11 -08:00
seq_file.c
stat.c [PATCH] fstatat64 support 2006-02-11 21:41:10 -08:00
super.c [PATCH] More informative message on umount failure 2006-02-07 16:12:33 -08:00
xattr.c
xattr_acl.c