2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-16 17:23:55 +08:00
linux-next/fs/nfs
Chuck Lever cd93710e8d NFS: Fix nfs4_verifier memory alignment
Clean up due to code review.

The nfs4_verifier's data field is not guaranteed to be u32-aligned.
Casting an array of chars to a u32 * is considered generally
hazardous.

Fix this by using a __be32 array to generate a verifier's contents,
and then byte-copy the contents into the verifier field.  The contents
of a verifier, for all intents and purposes, are opaque bytes.  Only
local code that generates a verifier need know the actual content and
format.  Everyone else compares the full byte array for exact
equality.

Also, sizeof(nfs4_verifer) is the size of the in-core verifier data
structure, but NFS4_VERIFIER_SIZE is the number of octets in an XDR'd
verifier.  The two are not interchangeable, even if they happen to
have the same value.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2012-03-06 10:32:48 -05:00
..
blocklayout NFS: start printks w/ NFS: even if __func__ shown 2012-02-06 18:48:00 -05:00
objlayout NFS: start printks w/ NFS: even if __func__ shown 2012-02-06 18:48:00 -05:00
cache_lib.c NFS: remove RPC PipeFS mount point references from NFS cache routines 2012-01-31 18:20:26 -05:00
cache_lib.h NFS: DNS resolver PipeFS notifier introduced 2012-01-31 18:20:26 -05:00
callback_proc.c NFSv4: Further clean-ups of delegation stateid validation 2012-03-06 10:32:44 -05:00
callback_xdr.c NFSv4: Simplify the struct nfs4_stateid 2012-03-06 10:32:47 -05:00
callback.c SUNRPC: Move clnt->cl_server into struct rpc_xprt 2012-03-02 15:36:41 -05:00
callback.h NFSv4.1: Convert slotid from u8 to u32 2012-02-15 00:19:43 -05:00
client.c NFS: Make clientaddr= optional 2012-03-02 17:18:04 -05:00
delegation.c NFSv4: Add helpers for basic copying of stateids 2012-03-06 10:32:46 -05:00
delegation.h NFS: Properly handle the case where the delegation is revoked 2012-03-06 10:32:43 -05:00
dir.c NFS: Make nfs_cache_array.size a signed integer 2012-03-02 15:36:13 -05:00
direct.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
dns_resolve.c NFS: pass proper net rpc_pton() in nfs_dns_resolve_name() 2012-02-06 18:48:04 -05:00
dns_resolve.h NFS: DNS resolver cache per network namespace context introduced 2012-01-31 18:20:26 -05:00
file.c NFS: Ensure that mmapped pages remain stable during writeback 2012-01-31 19:28:08 -05:00
fscache-index.c NFS: Use the inode->i_version to cache NFSv4 change attribute information 2011-10-18 09:14:34 -07:00
fscache.c FS-Cache: Add a helper to bulk uncache pages on an inode 2011-07-07 13:21:56 -07:00
fscache.h NFS: Propagate 'fsc' mount option through automounts 2009-09-23 14:36:39 -04:00
getroot.c Merge branch 'nfs-for-2.6.39' into nfs-for-next 2011-03-24 17:03:14 -04:00
idmap.c NFS: Store the legacy idmapper result in the keyring 2012-03-01 17:10:16 -05:00
inode.c NFS: Fix a typo in _nfs_display_fhandle 2012-03-06 10:32:43 -05:00
internal.h NFS: search for client session id in proper network namespace 2012-02-06 18:48:04 -05:00
iostat.h NFS: Squelch compiler warning in nfs_add_server_stats() 2010-05-14 15:09:31 -04:00
Kconfig NFSv4: Send implementation id with exchange_id 2012-03-01 17:10:21 -05:00
Makefile pnfsblock: add blocklayout Kconfig option, Makefile, and stubs 2011-07-31 12:18:15 -04:00
mount_clnt.c SUNRPC: constify the rpc_program 2012-01-31 19:28:20 -05:00
namespace.c nfs: Clean up debugging in nfs_follow_mountpoint() 2012-02-16 15:05:16 -05:00
netns.h NFS: make nfs_client_lock per net ns 2012-02-06 18:48:03 -05:00
nfs2xdr.c SUNRPC: constify the rpc_program 2012-01-31 19:28:20 -05:00
nfs3acl.c switch posix_acl_create() to umode_t * 2011-08-01 02:09:42 -04:00
nfs3proc.c Freezer / sunrpc / NFS: don't allow TASK_KILLABLE sleeps to block the freezer 2011-12-06 22:12:27 +01:00
nfs3xdr.c SUNRPC: constify the rpc_program 2012-01-31 19:28:20 -05:00
nfs4_fs.h NFSv4: Simplify the struct nfs4_stateid 2012-03-06 10:32:47 -05:00
nfs4filelayout.c NFS: include filelayout DS rpc stats in mountstats 2012-02-17 13:39:47 -05:00
nfs4filelayout.h NFSv4.1: do not use deviceids after MDS clientid invalidation 2011-07-12 13:40:29 -04:00
nfs4filelayoutdev.c NFS: Fix comparison between DS address lists 2012-02-06 18:48:00 -05:00
nfs4namespace.c SUNRPC: Use RCU to dereference the rpc_clnt.cl_xprt field 2012-03-02 15:36:38 -05:00
nfs4proc.c NFS: Fix nfs4_verifier memory alignment 2012-03-06 10:32:48 -05:00
nfs4renewd.c NFSv4: The NFSv4.0 client must send RENEW calls if it holds a delegation 2011-08-24 15:07:37 -04:00
nfs4state.c NFSv4: Simplify the struct nfs4_stateid 2012-03-06 10:32:47 -05:00
nfs4xdr.c NFS: Fix nfs4_verifier memory alignment 2012-03-06 10:32:48 -05:00
nfsroot.c NFS: Revert NFSROOT default mount options 2011-05-27 17:42:47 -04:00
pagelist.c NFS: Remove unnecessary includes from linux/nfs_fs_i.h 2012-01-31 18:20:28 -05:00
pnfs_dev.c fs: add export.h to files using EXPORT_SYMBOL/THIS_MODULE macros 2011-10-31 19:30:31 -04:00
pnfs.c NFSv4: Simplify the struct nfs4_stateid 2012-03-06 10:32:47 -05:00
pnfs.h NFSv4.1: Don't call nfs4_deviceid_purge_client() unless we're NFSv4.1 2012-02-26 17:34:22 -05:00
proc.c Freezer / sunrpc / NFS: don't allow TASK_KILLABLE sleeps to block the freezer 2011-12-06 22:12:27 +01:00
read.c NFSv41: Add a new helper nfs4_init_sequence() 2012-01-31 19:28:06 -05:00
super.c NFS: Fix a compile issue when !CONFIG_NFS_V4_1 2012-03-05 15:27:01 -05:00
symlink.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
sysctl.c NFS: Fall back on old idmapper if request_key() fails 2012-02-06 18:48:01 -05:00
unlink.c NFSv41: Add a new helper nfs4_init_sequence() 2012-01-31 19:28:06 -05:00
write.c NFSv41: Add a new helper nfs4_init_sequence() 2012-01-31 19:28:06 -05:00