From: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx> I noticed that NFS v4.0 and v4.1 have different setup_sequence() functions that are very, very similar. I think we should try to share as much code as possible whenever possible, so these patches merge together both versions of this function using the presence of a session to decide if we need to do a little extra work in some cases. I broke this change into several logical steps that (hopefully) make it easier to follow what I did. Questions? Comments? Thoughts? Anna Anna Schumaker (11): NFS: Move nfs4_get_session() into nfs4_session.h NFS: Change nfs4_get_session() to take an nfs_client structure NFS: Change nfs4_setup_sequence() to take an nfs_client structure NFS: Use nfs4_setup_sequence() everywhere NFS: Create a single nfs4_setup_sequence() function NFS: Move slot-already-allocated check into nfs_setup_sequence() NFS: Lock the slot table from a single place during setup sequence NFS: Handle setup sequence task rescheduling in a single place NFS: Check if the slot table is draining from nfs4_setup_sequence() NFS: Merge the remaining setup_sequence functions NFS: Make trace_nfs4_setup_sequence() available to NFS v4.0 fs/nfs/filelayout/filelayout.c | 6 +- fs/nfs/flexfilelayout/flexfilelayout.c | 40 ++---- fs/nfs/nfs42proc.c | 6 +- fs/nfs/nfs4_fs.h | 15 +- fs/nfs/nfs4proc.c | 244 +++++++++++---------------------- fs/nfs/nfs4session.h | 7 + fs/nfs/nfs4trace.h | 64 ++++----- 7 files changed, 139 insertions(+), 243 deletions(-) -- 2.11.0 -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html