diff options
-rw-r--r-- | fs/nfs/filelayout/filelayout.c | 6 | ||||
-rw-r--r-- | fs/nfs/flexfilelayout/flexfilelayout.c | 40 | ||||
-rw-r--r-- | fs/nfs/nfs42proc.c | 4 | ||||
-rw-r--r-- | fs/nfs/nfs4_fs.h | 5 | ||||
-rw-r--r-- | fs/nfs/nfs4proc.c | 30 |
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 | ||
1387 | static 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 | |||
1403 | static void ff_layout_read_prepare_v4(struct rpc_task *task, void *data) | 1387 | static 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 | ||
339 | static void | 339 | static 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) |
276 | extern int nfs41_setup_sequence(struct nfs4_session *session, | ||
277 | struct nfs4_sequence_args *args, struct nfs4_sequence_res *res, | ||
278 | struct rpc_task *task); | ||
279 | extern int nfs41_sequence_done(struct rpc_task *, struct nfs4_sequence_res *); | 276 | extern int nfs41_sequence_done(struct rpc_task *, struct nfs4_sequence_res *); |
280 | extern int nfs4_proc_create_session(struct nfs_client *, struct rpc_cred *); | 277 | extern int nfs4_proc_create_session(struct nfs_client *, struct rpc_cred *); |
281 | extern int nfs4_proc_destroy_session(struct nfs4_session *, struct rpc_cred *); | 278 | extern 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); | |||
456 | extern void nfs_increment_lock_seqid(int status, struct nfs_seqid *seqid); | 453 | extern void nfs_increment_lock_seqid(int status, struct nfs_seqid *seqid); |
457 | extern void nfs_release_seqid(struct nfs_seqid *seqid); | 454 | extern void nfs_release_seqid(struct nfs_seqid *seqid); |
458 | extern void nfs_free_seqid(struct nfs_seqid *seqid); | 455 | extern void nfs_free_seqid(struct nfs_seqid *seqid); |
459 | extern int nfs40_setup_sequence(struct nfs4_slot_table *tbl, | 456 | extern 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 | ||
625 | int nfs40_setup_sequence(struct nfs4_slot_table *tbl, | 625 | static 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 | } |
665 | EXPORT_SYMBOL_GPL(nfs40_setup_sequence); | ||
666 | 665 | ||
667 | static void nfs40_sequence_free_slot(struct nfs4_sequence_res *res) | 666 | static 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 | } |
883 | EXPORT_SYMBOL_GPL(nfs4_sequence_done); | 882 | EXPORT_SYMBOL_GPL(nfs4_sequence_done); |
884 | 883 | ||
885 | int nfs41_setup_sequence(struct nfs4_session *session, | 884 | static 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 | } |
948 | EXPORT_SYMBOL_GPL(nfs41_setup_sequence); | ||
949 | 947 | ||
950 | static int nfs4_setup_sequence(const struct nfs_client *client, | 948 | int 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 | } |
969 | EXPORT_SYMBOL_GPL(nfs4_setup_sequence); | ||
971 | 970 | ||
972 | static void nfs41_call_sync_prepare(struct rpc_task *task, void *calldata) | 971 | static 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 | ||
996 | static int nfs4_setup_sequence(const struct nfs_client *client, | 995 | int 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 | } |
1002 | EXPORT_SYMBOL_GPL(nfs4_setup_sequence); | ||
1003 | 1003 | ||
1004 | static int nfs4_sequence_process(struct rpc_task *task, struct nfs4_sequence_res *res) | 1004 | static int nfs4_sequence_process(struct rpc_task *task, struct nfs4_sequence_res *res) |
1005 | { | 1005 | { |