kernel-ark/fs/nfs
Andi Kleen 9465efc9e9 Remove BKL from remote_llseek v2
- Replace remote_llseek with generic_file_llseek_unlocked (to force compilation
failures in all users)
- Change all users to either use generic_file_llseek_unlocked directly or
take the BKL around. I changed the file systems who don't use the BKL
for anything (CIFS, GFS) to call it directly. NCPFS and SMBFS and NFS
take the BKL, but explicitely in their own source now.

I moved them all over in a single patch to avoid unbisectable sections.

Open problem: 32bit kernels can corrupt fpos because its modification
is not atomic, but they can do that anyways because there's other paths who
modify it without BKL.

Do we need a special lock for the pos/f_version = 0 checks?

Trond says the NFS BKL is likely not needed, but keep it for now
until his full audit.

v2: Use generic_file_llseek_unlocked instead of remote_llseek_unlocked
    and factor duplicated code (suggested by hch)

Cc: Trond.Myklebust@netapp.com
Cc: swhiteho@redhat.com
Cc: sfrench@samba.org
Cc: vandrove@vc.cvut.cz

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2008-07-02 15:06:27 -06:00
..
callback_proc.c
callback_xdr.c nfs: fix sparse warnings 2008-02-20 16:15:44 -05:00
callback.c NFS: don't let nfs_callback_svc exit on unexpected svc_recv errors (try #2) 2008-04-23 16:13:42 -04:00
callback.h
client.c nfs: use proc_create to setup de->proc_fops 2008-04-29 08:06:20 -07:00
delegation.c nfs: fix sparse warnings 2008-02-20 16:15:44 -05:00
delegation.h
dir.c Merge branch 'devel' 2008-04-24 14:01:02 -04:00
direct.c NFS: Ensure that rpc_run_task() errors are propagated back to the caller 2008-04-19 16:53:08 -04:00
file.c Remove BKL from remote_llseek v2 2008-07-02 15:06:27 -06:00
getroot.c Convert ERR_PTR(PTR_ERR(p)) instances to ERR_CAST(p) 2008-02-07 08:42:26 -08:00
idmap.c nfs: fix sparse warnings 2008-02-20 16:15:44 -05:00
inode.c Merge branch 'devel' 2008-04-24 14:01:02 -04:00
internal.h NFS: Always enable NFS direct I/O 2008-03-19 18:00:34 -04:00
iostat.h
Makefile NFS: Always enable NFS direct I/O 2008-03-19 18:00:34 -04:00
mount_clnt.c
namespace.c make nfs_automount_list static 2008-04-19 16:55:29 -04:00
nfs2xdr.c nfs: return negative error value from nfs{,4}_stat_to_errno 2008-04-19 16:54:47 -04:00
nfs3acl.c
nfs3proc.c
nfs3xdr.c nfs: return negative error value from nfs{,4}_stat_to_errno 2008-04-19 16:54:47 -04:00
nfs4_fs.h
nfs4namespace.c
nfs4proc.c NFSv4: Don't use cred->cr_ops->cr_name in nfs4_proc_setclientid() 2008-04-19 16:54:53 -04:00
nfs4renewd.c
nfs4state.c NFSv4: Attempt to use machine credentials in SETCLIENTID calls 2008-04-19 16:54:59 -04:00
nfs4xdr.c nfs: fix printout of multiword bitfields 2008-04-19 16:54:50 -04:00
nfsroot.c
pagelist.c
proc.c
read.c NFS: Ensure that rpc_run_task() errors are propagated back to the caller 2008-04-19 16:53:08 -04:00
super.c mm: bdi: expose the BDI object in sysfs for NFS 2008-04-30 08:29:49 -07:00
symlink.c nfs: remove unnecessary NFS_NEED_* defines 2008-04-23 16:13:37 -04:00
sysctl.c
unlink.c SUNRPC: Add a helper rpcauth_lookup_generic_cred() 2008-03-14 13:42:49 -04:00
write.c NFS: Ensure that rpc_run_task() errors are propagated back to the caller 2008-04-19 16:53:08 -04:00