aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/nfs/filelayout/filelayout.c6
-rw-r--r--fs/nfs/flexfilelayout/flexfilelayout.c40
-rw-r--r--fs/nfs/nfs42proc.c4
-rw-r--r--fs/nfs/nfs4_fs.h5
-rw-r--r--fs/nfs/nfs4proc.c30
5 files changed, 33 insertions, 52 deletions
diff --git a/fs/nfs/filelayout/filelayout.c b/fs/nfs/filelayout/filelayout.c
index a3fc48ba4931..7aff350f15b1 100644
--- a/fs/nfs/filelayout/filelayout.c
+++ b/fs/nfs/filelayout/filelayout.c
@@ -305,7 +305,7 @@ static void filelayout_read_prepare(struct rpc_task *task, void *data)
305 } 305 }
306 hdr->pgio_done_cb = filelayout_read_done_cb; 306 hdr->pgio_done_cb = filelayout_read_done_cb;
307 307
308 if (nfs41_setup_sequence(hdr->ds_clp->cl_session, 308 if (nfs4_setup_sequence(hdr->ds_clp,
309 &hdr->args.seq_args, 309 &hdr->args.seq_args,
310 &hdr->res.seq_res, 310 &hdr->res.seq_res,
311 task)) 311 task))
@@ -403,7 +403,7 @@ static void filelayout_write_prepare(struct rpc_task *task, void *data)
403 rpc_exit(task, 0); 403 rpc_exit(task, 0);
404 return; 404 return;
405 } 405 }
406 if (nfs41_setup_sequence(hdr->ds_clp->cl_session, 406 if (nfs4_setup_sequence(hdr->ds_clp,
407 &hdr->args.seq_args, 407 &hdr->args.seq_args,
408 &hdr->res.seq_res, 408 &hdr->res.seq_res,
409 task)) 409 task))
@@ -438,7 +438,7 @@ static void filelayout_commit_prepare(struct rpc_task *task, void *data)
438{ 438{
439 struct nfs_commit_data *wdata = data; 439 struct nfs_commit_data *wdata = data;
440 440
441 nfs41_setup_sequence(wdata->ds_clp->cl_session, 441 nfs4_setup_sequence(wdata->ds_clp,
442 &wdata->args.seq_args, 442 &wdata->args.seq_args,
443 &wdata->res.seq_res, 443 &wdata->res.seq_res,
444 task); 444 task);
diff --git a/fs/nfs/flexfilelayout/flexfilelayout.c b/fs/nfs/flexfilelayout/flexfilelayout.c
index 0ca4af8cca5d..cc9064974104 100644
--- a/fs/nfs/flexfilelayout/flexfilelayout.c
+++ b/fs/nfs/flexfilelayout/flexfilelayout.c
@@ -1384,30 +1384,14 @@ static void ff_layout_read_prepare_v3(struct rpc_task *task, void *data)
1384 rpc_call_start(task); 1384 rpc_call_start(task);
1385} 1385}
1386 1386
1387static int ff_layout_setup_sequence(struct nfs_client *ds_clp,
1388 struct nfs4_sequence_args *args,
1389 struct nfs4_sequence_res *res,
1390 struct rpc_task *task)
1391{
1392 if (ds_clp->cl_session)
1393 return nfs41_setup_sequence(ds_clp->cl_session,
1394 args,
1395 res,
1396 task);
1397 return nfs40_setup_sequence(ds_clp->cl_slot_tbl,
1398 args,
1399 res,
1400 task);
1401}
1402
1403static void ff_layout_read_prepare_v4(struct rpc_task *task, void *data) 1387static void ff_layout_read_prepare_v4(struct rpc_task *task, void *data)
1404{ 1388{
1405 struct nfs_pgio_header *hdr = data; 1389 struct nfs_pgio_header *hdr = data;
1406 1390
1407 if (ff_layout_setup_sequence(hdr->ds_clp, 1391 if (nfs4_setup_sequence(hdr->ds_clp,
1408 &hdr->args.seq_args, 1392 &hdr->args.seq_args,
1409 &hdr->res.seq_res, 1393 &hdr->res.seq_res,
1410 task)) 1394 task))
1411 return; 1395 return;
1412 1396
1413 if (ff_layout_read_prepare_common(task, hdr)) 1397 if (ff_layout_read_prepare_common(task, hdr))
@@ -1578,10 +1562,10 @@ static void ff_layout_write_prepare_v4(struct rpc_task *task, void *data)
1578{ 1562{
1579 struct nfs_pgio_header *hdr = data; 1563 struct nfs_pgio_header *hdr = data;
1580 1564
1581 if (ff_layout_setup_sequence(hdr->ds_clp, 1565 if (nfs4_setup_sequence(hdr->ds_clp,
1582 &hdr->args.seq_args, 1566 &hdr->args.seq_args,
1583 &hdr->res.seq_res, 1567 &hdr->res.seq_res,
1584 task)) 1568 task))
1585 return; 1569 return;
1586 1570
1587 if (ff_layout_write_prepare_common(task, hdr)) 1571 if (ff_layout_write_prepare_common(task, hdr))
@@ -1667,10 +1651,10 @@ static void ff_layout_commit_prepare_v4(struct rpc_task *task, void *data)
1667{ 1651{
1668 struct nfs_commit_data *wdata = data; 1652 struct nfs_commit_data *wdata = data;
1669 1653
1670 if (ff_layout_setup_sequence(wdata->ds_clp, 1654 if (nfs4_setup_sequence(wdata->ds_clp,
1671 &wdata->args.seq_args, 1655 &wdata->args.seq_args,
1672 &wdata->res.seq_res, 1656 &wdata->res.seq_res,
1673 task)) 1657 task))
1674 return; 1658 return;
1675 ff_layout_commit_prepare_common(task, data); 1659 ff_layout_commit_prepare_common(task, data);
1676} 1660}
diff --git a/fs/nfs/nfs42proc.c b/fs/nfs/nfs42proc.c
index b03010eebafd..98cf58341066 100644
--- a/fs/nfs/nfs42proc.c
+++ b/fs/nfs/nfs42proc.c
@@ -332,8 +332,8 @@ nfs42_layoutstat_prepare(struct rpc_task *task, void *calldata)
332 } 332 }
333 nfs4_stateid_copy(&data->args.stateid, &lo->plh_stateid); 333 nfs4_stateid_copy(&data->args.stateid, &lo->plh_stateid);
334 spin_unlock(&inode->i_lock); 334 spin_unlock(&inode->i_lock);
335 nfs41_setup_sequence(nfs4_get_session(server->nfs_client), 335 nfs4_setup_sequence(server->nfs_client, &data->args.seq_args,
336 &data->args.seq_args, &data->res.seq_res, task); 336 &data->res.seq_res, task);
337} 337}
338 338
339static void 339static void
diff --git a/fs/nfs/nfs4_fs.h b/fs/nfs/nfs4_fs.h
index 04ffea093d56..af285cc27ccf 100644
--- a/fs/nfs/nfs4_fs.h
+++ b/fs/nfs/nfs4_fs.h
@@ -273,9 +273,6 @@ extern int nfs4_set_rw_stateid(nfs4_stateid *stateid,
273 fmode_t fmode); 273 fmode_t fmode);
274 274
275#if defined(CONFIG_NFS_V4_1) 275#if defined(CONFIG_NFS_V4_1)
276extern int nfs41_setup_sequence(struct nfs4_session *session,
277 struct nfs4_sequence_args *args, struct nfs4_sequence_res *res,
278 struct rpc_task *task);
279extern int nfs41_sequence_done(struct rpc_task *, struct nfs4_sequence_res *); 276extern int nfs41_sequence_done(struct rpc_task *, struct nfs4_sequence_res *);
280extern int nfs4_proc_create_session(struct nfs_client *, struct rpc_cred *); 277extern int nfs4_proc_create_session(struct nfs_client *, struct rpc_cred *);
281extern int nfs4_proc_destroy_session(struct nfs4_session *, struct rpc_cred *); 278extern int nfs4_proc_destroy_session(struct nfs4_session *, struct rpc_cred *);
@@ -456,7 +453,7 @@ extern void nfs_increment_open_seqid(int status, struct nfs_seqid *seqid);
456extern void nfs_increment_lock_seqid(int status, struct nfs_seqid *seqid); 453extern void nfs_increment_lock_seqid(int status, struct nfs_seqid *seqid);
457extern void nfs_release_seqid(struct nfs_seqid *seqid); 454extern void nfs_release_seqid(struct nfs_seqid *seqid);
458extern void nfs_free_seqid(struct nfs_seqid *seqid); 455extern void nfs_free_seqid(struct nfs_seqid *seqid);
459extern int nfs40_setup_sequence(struct nfs4_slot_table *tbl, 456extern int nfs4_setup_sequence(const struct nfs_client *client,
460 struct nfs4_sequence_args *args, 457 struct nfs4_sequence_args *args,
461 struct nfs4_sequence_res *res, 458 struct nfs4_sequence_res *res,
462 struct rpc_task *task); 459 struct rpc_task *task);
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index f62d58cb3014..4ced1c964b1e 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -622,10 +622,10 @@ static void nfs4_set_sequence_privileged(struct nfs4_sequence_args *args)
622 args->sa_privileged = 1; 622 args->sa_privileged = 1;
623} 623}
624 624
625int nfs40_setup_sequence(struct nfs4_slot_table *tbl, 625static int nfs40_setup_sequence(struct nfs4_slot_table *tbl,
626 struct nfs4_sequence_args *args, 626 struct nfs4_sequence_args *args,
627 struct nfs4_sequence_res *res, 627 struct nfs4_sequence_res *res,
628 struct rpc_task *task) 628 struct rpc_task *task)
629{ 629{
630 struct nfs4_slot *slot; 630 struct nfs4_slot *slot;
631 631
@@ -662,7 +662,6 @@ out_sleep:
662 spin_unlock(&tbl->slot_tbl_lock); 662 spin_unlock(&tbl->slot_tbl_lock);
663 return -EAGAIN; 663 return -EAGAIN;
664} 664}
665EXPORT_SYMBOL_GPL(nfs40_setup_sequence);
666 665
667static void nfs40_sequence_free_slot(struct nfs4_sequence_res *res) 666static void nfs40_sequence_free_slot(struct nfs4_sequence_res *res)
668{ 667{
@@ -882,7 +881,7 @@ int nfs4_sequence_done(struct rpc_task *task, struct nfs4_sequence_res *res)
882} 881}
883EXPORT_SYMBOL_GPL(nfs4_sequence_done); 882EXPORT_SYMBOL_GPL(nfs4_sequence_done);
884 883
885int nfs41_setup_sequence(struct nfs4_session *session, 884static int nfs41_setup_sequence(struct nfs4_session *session,
886 struct nfs4_sequence_args *args, 885 struct nfs4_sequence_args *args,
887 struct nfs4_sequence_res *res, 886 struct nfs4_sequence_res *res,
888 struct rpc_task *task) 887 struct rpc_task *task)
@@ -945,12 +944,11 @@ out_sleep:
945 spin_unlock(&tbl->slot_tbl_lock); 944 spin_unlock(&tbl->slot_tbl_lock);
946 return -EAGAIN; 945 return -EAGAIN;
947} 946}
948EXPORT_SYMBOL_GPL(nfs41_setup_sequence);
949 947
950static int nfs4_setup_sequence(const struct nfs_client *client, 948int nfs4_setup_sequence(const struct nfs_client *client,
951 struct nfs4_sequence_args *args, 949 struct nfs4_sequence_args *args,
952 struct nfs4_sequence_res *res, 950 struct nfs4_sequence_res *res,
953 struct rpc_task *task) 951 struct rpc_task *task)
954{ 952{
955 struct nfs4_session *session = nfs4_get_session(client); 953 struct nfs4_session *session = nfs4_get_session(client);
956 int ret = 0; 954 int ret = 0;
@@ -968,6 +966,7 @@ static int nfs4_setup_sequence(const struct nfs_client *client,
968 dprintk("<-- %s status=%d\n", __func__, ret); 966 dprintk("<-- %s status=%d\n", __func__, ret);
969 return ret; 967 return ret;
970} 968}
969EXPORT_SYMBOL_GPL(nfs4_setup_sequence);
971 970
972static void nfs41_call_sync_prepare(struct rpc_task *task, void *calldata) 971static void nfs41_call_sync_prepare(struct rpc_task *task, void *calldata)
973{ 972{
@@ -993,13 +992,14 @@ static const struct rpc_call_ops nfs41_call_sync_ops = {
993 992
994#else /* !CONFIG_NFS_V4_1 */ 993#else /* !CONFIG_NFS_V4_1 */
995 994
996static int nfs4_setup_sequence(const struct nfs_client *client, 995int nfs4_setup_sequence(const struct nfs_client *client,
997 struct nfs4_sequence_args *args, 996 struct nfs4_sequence_args *args,
998 struct nfs4_sequence_res *res, 997 struct nfs4_sequence_res *res,
999 struct rpc_task *task) 998 struct rpc_task *task)
1000{ 999{
1001 return nfs40_setup_sequence(client->cl_slot_tbl, args, res, task); 1000 return nfs40_setup_sequence(client->cl_slot_tbl, args, res, task);
1002} 1001}
1002EXPORT_SYMBOL_GPL(nfs4_setup_sequence);
1003 1003
1004static int nfs4_sequence_process(struct rpc_task *task, struct nfs4_sequence_res *res) 1004static int nfs4_sequence_process(struct rpc_task *task, struct nfs4_sequence_res *res)
1005{ 1005{