NFS: Change nfs4_get_session() to take an nfs_client structure
pNFS only has access to the nfs_client structure, and not the
nfs_server, so we need to make this change so the function can be used
by pNFS as well.
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
diff --git a/fs/nfs/nfs42proc.c b/fs/nfs/nfs42proc.c
index b752d85..b03010e 100644
--- a/fs/nfs/nfs42proc.c
+++ b/fs/nfs/nfs42proc.c
@@ -332,9 +332,8 @@ nfs42_layoutstat_prepare(struct rpc_task *task, void *calldata)
}
nfs4_stateid_copy(&data->args.stateid, &lo->plh_stateid);
spin_unlock(&inode->i_lock);
- nfs41_setup_sequence(nfs4_get_session(server), &data->args.seq_args,
- &data->res.seq_res, task);
-
+ nfs41_setup_sequence(nfs4_get_session(server->nfs_client),
+ &data->args.seq_args, &data->res.seq_res, task);
}
static void
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 0a0eaec..46cb55a 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -952,7 +952,7 @@ static int nfs4_setup_sequence(const struct nfs_server *server,
struct nfs4_sequence_res *res,
struct rpc_task *task)
{
- struct nfs4_session *session = nfs4_get_session(server);
+ struct nfs4_session *session = nfs4_get_session(server->nfs_client);
int ret = 0;
if (!session)
@@ -972,7 +972,7 @@ static int nfs4_setup_sequence(const struct nfs_server *server,
static void nfs41_call_sync_prepare(struct rpc_task *task, void *calldata)
{
struct nfs4_call_sync_data *data = calldata;
- struct nfs4_session *session = nfs4_get_session(data->seq_server);
+ struct nfs4_session *session = nfs4_get_session(data->seq_server->nfs_client);
dprintk("--> %s data->seq_server %p\n", __func__, data->seq_server);
@@ -8397,7 +8397,7 @@ nfs4_layoutget_prepare(struct rpc_task *task, void *calldata)
{
struct nfs4_layoutget *lgp = calldata;
struct nfs_server *server = NFS_SERVER(lgp->args.inode);
- struct nfs4_session *session = nfs4_get_session(server);
+ struct nfs4_session *session = nfs4_get_session(server->nfs_client);
dprintk("--> %s\n", __func__);
nfs41_setup_sequence(session, &lgp->args.seq_args,
@@ -8794,7 +8794,7 @@ static void nfs4_layoutcommit_prepare(struct rpc_task *task, void *calldata)
{
struct nfs4_layoutcommit_data *data = calldata;
struct nfs_server *server = NFS_SERVER(data->args.inode);
- struct nfs4_session *session = nfs4_get_session(server);
+ struct nfs4_session *session = nfs4_get_session(server->nfs_client);
nfs41_setup_sequence(session,
&data->args.seq_args,
@@ -9120,7 +9120,7 @@ struct nfs_free_stateid_data {
static void nfs41_free_stateid_prepare(struct rpc_task *task, void *calldata)
{
struct nfs_free_stateid_data *data = calldata;
- nfs41_setup_sequence(nfs4_get_session(data->server),
+ nfs41_setup_sequence(nfs4_get_session(data->server->nfs_client),
&data->args.seq_args,
&data->res.seq_res,
task);
diff --git a/fs/nfs/nfs4session.h b/fs/nfs/nfs4session.h
index 22cb550..f6378d9 100644
--- a/fs/nfs/nfs4session.h
+++ b/fs/nfs/nfs4session.h
@@ -103,9 +103,9 @@ static inline bool nfs4_test_locked_slot(const struct nfs4_slot_table *tbl,
return !!test_bit(slotid, tbl->used_slots);
}
-static inline struct nfs4_session *nfs4_get_session(const struct nfs_server *server)
+static inline struct nfs4_session *nfs4_get_session(const struct nfs_client *clp)
{
- return server->nfs_client->cl_session;
+ return clp->cl_session;
}
#if defined(CONFIG_NFS_V4_1)