[<prev] [next>] [day] [month] [year] [list]
Message-ID: <4FA345DA4F4AE44899BD2B03EEEC2FA911954081@sacexcmbx05-prd.hq.netapp.com>
Date: Tue, 18 Dec 2012 01:26:16 +0000
From: "Myklebust, Trond" <Trond.Myklebust@...app.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
CC: Linux NFS mailing list <linux-nfs@...r.kernel.org>,
linux-kernel <linux-kernel@...r.kernel.org>
Subject: [GIT PULL] Please pull NFS client changesets for Linux 3.8
Hi Linus,
The following changes since commit 0e4a43ed08e2f44aa7b96aa95d0a540d675483e1:
Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-fixes (2012-11-07 13:38:56 +0100)
are available in the git repository at:
git://git.linux-nfs.org/projects/trondmy/linux-nfs.git tags/nfs-for-3.8-1
for you to fetch changes up to cd6c5968582a273561464fe6b1e8cc8214be02df:
SUNRPC: continue run over clients list on PipeFS event instead of break (2012-12-17 12:19:16 -0500)
Cheers
Trond
----------------------------------------------------------------
NFS client updates for Linux 3.8
Features include:
- Full audit of BUG_ON asserts in the NFS, SUNRPC and lockd client code
Remove altogether where possible, and replace with WARN_ON_ONCE and
appropriate error returns where not.
- NFSv4.1 client adds session dynamic slot table management. There is
matching server side code that has been submitted to Bruce for
consideration. Together, this code allows the server to dynamically
manage the amount of memory it allocates to the duplicate request
cache for each client. It will constantly resize those caches to
reserve more memory for clients that are hot while shrinking caches
for those that are quiescent.
In addition, there are assorted bugfixes for the generic NFS write code,
fixes to deal with the drop_nlink() warnings, and yet another fix for
NFSv4 getacl.
----------------------------------------------------------------
Andy Adamson (2):
SUNRPC set gss gc_expiry to full lifetime
SUNRPC handle EKEYEXPIRED in call_refreshresult
Bryan Schumaker (2):
NFS: Add sequence_priviliged_ops for nfs4_proc_sequence()
NFS: Remove _nfs_call_sync_session
Jeff Layton (3):
nfs: don't extend writes to cover entire page if pagecache is invalid
nfs: don't zero out the rest of the page if we hit the EOF on a DIO READ
nfs: fix page dirtying in NFS DIO read codepath
Jim Rees (1):
NFS: Reduce stack use in encode_exchange_id()
NeilBrown (1):
NFS: avoid NULL dereference in nfs_destroy_server
Stanislav Kinsbursky (1):
SUNRPC: continue run over clients list on PipeFS event instead of break
Sven Wegener (1):
NFSv4: Check for buffer length in __nfs4_get_acl_uncached
Trond Myklebust (68):
NFS: Get rid of unnecessary asserts
NFS: Remove asserts from the NFS XDR code
NFSv4: Remove the BUG_ON() from nfs4_get_lease_time_prepare()...
NFSv4.1: Remove unused function last_byte_offset
NFSv4.1: Remove assertion BUG_ON()s from the files and generic layout code
NFS: Remove BUG_ON() calls from the generic writeback code
NFSv4: Get rid of unnecessary BUG_ON()s
NFS: Remove BUG_ON()s in the fs/nfs/inode.c
NFS: Remove the BUG_ON() in the mount code
lockd: Remove unnecessary BUG_ON()s in the xdr client code
lockd: Remove trivial BUG_ON()s from the NSM code
lockd: Remove BUG_ON()s in fs/lockd/host.c
lockd: Remove BUG_ON()s from fs/lockd/clntproc.c
SUNRPC: Clean up rpc_bind_new_program
SUNRPC: Fix validity issues with rpc_pipefs sb->s_fs_info
NFSv4.1: Handle session reset and bind_conn_to_session before lease check
NFSv4.1: Don't confuse CREATE_SESSION arguments and results
NFSv4.1: Adjust CREATE_SESSION arguments when mounting a new filesystem
NFSv4.1: We must bump the clientid sequence number after CREATE_SESSION
NFSv4.1: nfs4_alloc_slots doesn't need zeroing
NFSv4.1: clean up nfs4_recall_slot to use nfs4_alloc_slots
NFSv4.1: Shrink struct nfs4_sequence_res by moving sr_renewal_time
NFSv4: Fix a compile time warning when #undef CONFIG_NFS_V4_1
NFSv4.1: Shrink struct nfs4_sequence_res by moving the session pointer
NFSv4.1: Label each entry in the session slot tables with its slot number
NFSv4.1: Simplify struct nfs4_sequence_args too
NFSv4.1: Simplify slot allocation
NFSv4.1: Clean up nfs4_free_slot
NFSv4.1: Ensure that the client tracks the server target_highest_slotid
NFSv4.1: Reset the sequence number for slots that have been deallocated
NFSv4.1: Fix nfs4_callback_recallslot to work with dynamic slot allocation
NFSv4.1: Don't confuse target_highest_slotid and max_slots in cb_recall_slot
NFSv4.1: Allow the server to recall all but one slot
NFSv4.1: Support dynamic resizing of the session slot table
NFSv4.1: Allow SEQUENCE to resize the slot table on the fly
NFSv4.1: Remove the state manager code to resize the slot table
NFSv4.1: CB_RECALL_SLOT must schedule a sequence op after updating targets
NFSv4.1: If slot allocation fails due to OOM, retry more quickly
NFSv4.1: Clean up session draining
NFSv4: Move nfs4_wait_clnt_recover and nfs4_client_recover_expired_lease
NFSv4.1: Cleanup move session slot management to fs/nfs/nfs4session.c
NFS: Remove unused function slot_idx
NFSv4.1: Move slot table and session struct definitions to nfs4session.h
NFSv4.1: Set the maximum slot table size to 1024 slots
NFSv4.1: Ping server when our session table limits are too high
NFSv4.1: Use nfs41_setup_sequence where appropriate
NFSv4.1: Simplify the sequence setup
NFSv4: Simplify the NFSv4/v4.1 synchronous call switch
NFSv4.1: Clean up nfs41_setup_sequence
NFSv4.1: Remove the 'FIFO' behaviour for nfs41_setup_sequence
NFSv4: Clean up handling of privileged operations
NFSv4.1: Don't mess with task priorities in nfs41_setup_sequence
NFSv4: Reorder the XDR structures to put sequence at the top, not bottom
NFSv4.1: Ensure smooth handover of slots from one task to the next waiting
SUNRPC: Don't allow low priority tasks to pre-empt higher priority ones
NFSv4.1: Try to eliminate outliers when updating target_highest_slotid
Merge branch 'bugfixes' into nfs-for-next
NFSv4.1: Handle NFS4ERR_BADSLOT errors correctly
NFSv4.1: Be conservative about the client highest slotid
NFS: Ensure that we always drop inodes that have been marked as stale
NFS: Fix calls to drop_nlink()
NFS: nfs_lookup_revalidate should not trust an inode with i_nlink == 0
NFSv4.1: Try to deal with NFS4ERR_SEQ_MISORDERED.
NFSv4.1: Move the RPC timestamp out of the slot.
NFSv4.1: Deal effectively with interrupted RPC calls.
SUNRPC: Handle ECONNREFUSED in xs_local_setup_socket
SUNRPC: variable 'svsk' is unused in function bc_send_request
NFS: Don't use SetPageError in the NFS writeback code
Weston Andros Adamson (25):
SUNRPC: add WARN_ON_ONCE for potential deadlock
SUNRPC: remove BUG_ON in __rpc_clnt_handle_event
SUNRPC: remove BUG_ON from rpc_run_bc_task
SUNRPC: remove BUG_ON from call_transmit
SUNRPC: remove BUG_ON from call_bc_transmit
SUNRPC: remove BUG_ON from call_bc_transmit
SUNRPC: remove BUG_ON from rpc_sleep_on*
SUNRPC: remove BUG_ON from xprt_destroy_backchannel
SUNRPC: remove BUG_ON from bc_send
SUNRPC: remove BUG_ON calls from cache_read
SUNRPC: remove BUG_ON in rpc_put_sb_net
SUNRPC: remove two BUG_ON asserts
SUNRPC: remove BUG_ON from svc_pool_map_set_cpumask
SUNRPC: remove BUG_ONs from *_reclassify_socket*
SUNRPC: remove BUG_ON in svc_xprt_received
SUNRPC: remove BUG_ONs checking RPCSVC_MAXPAGES
SUNRPC: remove BUG_ON in xdr_shrink_bufhead
SUNRPC: remove BUG_ON from bc_malloc
SUNRPC: remove BUG_ON from encode_rpcb_string
SUNRPC: remove BUG_ON in svc_register
SUNRPC: remove BUG_ON from __rpc_sleep_on_priority
SUNRPC: remove BUG_ONs checking RPC_IS_QUEUED
SUNRPC: remove BUG_ON in svc_delete_xprt
SUNRPC: remove BUG_ON in rpc_release_task
SUNRPC: remove BUG_ON from rpc_call_sync
Yanchuan Nian (3):
nfs: Fix wrong slab cache in nfs_commit_mempool
nfs: Remove duplicate function declaration in internal.h
nfs: Remove unused list nfs4_clientid_list
fs/lockd/clnt4xdr.c | 8 -
fs/lockd/clntproc.c | 3 +-
fs/lockd/clntxdr.c | 8 -
fs/lockd/host.c | 15 +-
fs/lockd/mon.c | 3 -
fs/nfs/Makefile | 2 +-
fs/nfs/blocklayout/blocklayout.c | 1 +
fs/nfs/cache_lib.c | 1 -
fs/nfs/callback.h | 4 +-
fs/nfs/callback_proc.c | 17 +-
fs/nfs/callback_xdr.c | 5 +-
fs/nfs/client.c | 9 +-
fs/nfs/dir.c | 22 +-
fs/nfs/direct.c | 17 +-
fs/nfs/inode.c | 10 +-
fs/nfs/internal.h | 42 +-
fs/nfs/mount_clnt.c | 7 +-
fs/nfs/nfs2xdr.c | 4 +-
fs/nfs/nfs3proc.c | 6 +-
fs/nfs/nfs3xdr.c | 7 +-
fs/nfs/nfs4_fs.h | 29 +-
fs/nfs/nfs4client.c | 5 +-
fs/nfs/nfs4file.c | 1 -
fs/nfs/nfs4filelayout.c | 45 +--
fs/nfs/nfs4filelayoutdev.c | 3 +-
fs/nfs/nfs4proc.c | 820 +++++++++++----------------------------
fs/nfs/nfs4session.c | 552 ++++++++++++++++++++++++++
fs/nfs/nfs4session.h | 142 +++++++
fs/nfs/nfs4state.c | 143 +++----
fs/nfs/nfs4super.c | 1 +
fs/nfs/nfs4xdr.c | 52 +--
fs/nfs/objlayout/objlayout.c | 11 -
fs/nfs/pnfs.c | 17 +-
fs/nfs/proc.c | 43 --
fs/nfs/super.c | 2 +
fs/nfs/write.c | 31 +-
include/linux/nfs_fs_sb.h | 47 ---
include/linux/nfs_xdr.h | 155 ++++----
include/linux/sunrpc/sched.h | 1 -
net/sunrpc/auth_gss/auth_gss.c | 17 +-
net/sunrpc/backchannel_rqst.c | 9 +-
net/sunrpc/bc_svc.c | 2 +-
net/sunrpc/cache.c | 4 +-
net/sunrpc/clnt.c | 48 ++-
net/sunrpc/rpc_pipe.c | 9 +-
net/sunrpc/rpcb_clnt.c | 5 +-
net/sunrpc/sched.c | 71 ++--
net/sunrpc/svc.c | 12 +-
net/sunrpc/svc_xprt.c | 11 +-
net/sunrpc/svcsock.c | 6 +-
net/sunrpc/xdr.c | 5 +-
net/sunrpc/xprtsock.c | 19 +-
52 files changed, 1335 insertions(+), 1174 deletions(-)
create mode 100644 fs/nfs/nfs4session.c
create mode 100644 fs/nfs/nfs4session.h
--
Trond Myklebust
Linux NFS client maintainer
NetApp
Trond.Myklebust@...app.com
www.netapp.com
Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)
Powered by blists - more mailing lists