nfsd: add nfsd4_client_tracking_ops struct and a way to set it
authorJeff Layton <jlayton@redhat.com>
Wed, 21 Mar 2012 20:42:43 +0000 (16:42 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Mon, 26 Mar 2012 15:49:47 +0000 (11:49 -0400)
commit2a4317c55438d8589a015d42912454ede12031f0
treecfcc8d551c750bd46ea86fb5fd4ed5d305063615
parenta52d726bbd928164609e6abc4dc967e819dbf09c
nfsd: add nfsd4_client_tracking_ops struct and a way to set it

Abstract out the mechanism that we use to track clients into a set of
client name tracking functions.

This gives us a mechanism to plug in a new set of client tracking
functions without disturbing the callers. It also gives us a way to
decide on what tracking scheme to use at runtime.

For now, this just looks like pointless abstraction, but later we'll
add a new alternate scheme for tracking clients on stable storage.

Note too that this patch anticipates the eventual containerization
of this code by passing in struct net pointers in places. No attempt
is made to containerize the legacy client tracker however.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4recover.c
fs/nfsd/nfs4state.c
fs/nfsd/state.h