@@ -747,13 +747,11 @@ struct cld_upcall {
747
747
};
748
748
749
749
static int
750
- __cld_pipe_upcall (struct rpc_pipe * pipe , void * cmsg )
750
+ __cld_pipe_upcall (struct rpc_pipe * pipe , void * cmsg , struct nfsd_net * nn )
751
751
{
752
752
int ret ;
753
753
struct rpc_pipe_msg msg ;
754
754
struct cld_upcall * cup = container_of (cmsg , struct cld_upcall , cu_u );
755
- struct nfsd_net * nn = net_generic (pipe -> dentry -> d_sb -> s_fs_info ,
756
- nfsd_net_id );
757
755
758
756
memset (& msg , 0 , sizeof (msg ));
759
757
msg .data = cmsg ;
@@ -773,7 +771,7 @@ __cld_pipe_upcall(struct rpc_pipe *pipe, void *cmsg)
773
771
}
774
772
775
773
static int
776
- cld_pipe_upcall (struct rpc_pipe * pipe , void * cmsg )
774
+ cld_pipe_upcall (struct rpc_pipe * pipe , void * cmsg , struct nfsd_net * nn )
777
775
{
778
776
int ret ;
779
777
@@ -782,7 +780,7 @@ cld_pipe_upcall(struct rpc_pipe *pipe, void *cmsg)
782
780
* upcalls queued.
783
781
*/
784
782
do {
785
- ret = __cld_pipe_upcall (pipe , cmsg );
783
+ ret = __cld_pipe_upcall (pipe , cmsg , nn );
786
784
} while (ret == - EAGAIN );
787
785
788
786
return ret ;
@@ -1115,7 +1113,7 @@ nfsd4_cld_create(struct nfs4_client *clp)
1115
1113
memcpy (cup -> cu_u .cu_msg .cm_u .cm_name .cn_id , clp -> cl_name .data ,
1116
1114
clp -> cl_name .len );
1117
1115
1118
- ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg );
1116
+ ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg , nn );
1119
1117
if (!ret ) {
1120
1118
ret = cup -> cu_u .cu_msg .cm_status ;
1121
1119
set_bit (NFSD4_CLIENT_STABLE , & clp -> cl_flags );
@@ -1180,7 +1178,7 @@ nfsd4_cld_create_v2(struct nfs4_client *clp)
1180
1178
} else
1181
1179
cmsg -> cm_u .cm_clntinfo .cc_princhash .cp_len = 0 ;
1182
1180
1183
- ret = cld_pipe_upcall (cn -> cn_pipe , cmsg );
1181
+ ret = cld_pipe_upcall (cn -> cn_pipe , cmsg , nn );
1184
1182
if (!ret ) {
1185
1183
ret = cmsg -> cm_status ;
1186
1184
set_bit (NFSD4_CLIENT_STABLE , & clp -> cl_flags );
@@ -1218,7 +1216,7 @@ nfsd4_cld_remove(struct nfs4_client *clp)
1218
1216
memcpy (cup -> cu_u .cu_msg .cm_u .cm_name .cn_id , clp -> cl_name .data ,
1219
1217
clp -> cl_name .len );
1220
1218
1221
- ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg );
1219
+ ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg , nn );
1222
1220
if (!ret ) {
1223
1221
ret = cup -> cu_u .cu_msg .cm_status ;
1224
1222
clear_bit (NFSD4_CLIENT_STABLE , & clp -> cl_flags );
@@ -1261,7 +1259,7 @@ nfsd4_cld_check_v0(struct nfs4_client *clp)
1261
1259
memcpy (cup -> cu_u .cu_msg .cm_u .cm_name .cn_id , clp -> cl_name .data ,
1262
1260
clp -> cl_name .len );
1263
1261
1264
- ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg );
1262
+ ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg , nn );
1265
1263
if (!ret ) {
1266
1264
ret = cup -> cu_u .cu_msg .cm_status ;
1267
1265
set_bit (NFSD4_CLIENT_STABLE , & clp -> cl_flags );
@@ -1404,7 +1402,7 @@ nfsd4_cld_grace_start(struct nfsd_net *nn)
1404
1402
}
1405
1403
1406
1404
cup -> cu_u .cu_msg .cm_cmd = Cld_GraceStart ;
1407
- ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg );
1405
+ ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg , nn );
1408
1406
if (!ret )
1409
1407
ret = cup -> cu_u .cu_msg .cm_status ;
1410
1408
@@ -1432,7 +1430,7 @@ nfsd4_cld_grace_done_v0(struct nfsd_net *nn)
1432
1430
1433
1431
cup -> cu_u .cu_msg .cm_cmd = Cld_GraceDone ;
1434
1432
cup -> cu_u .cu_msg .cm_u .cm_gracetime = nn -> boot_time ;
1435
- ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg );
1433
+ ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg , nn );
1436
1434
if (!ret )
1437
1435
ret = cup -> cu_u .cu_msg .cm_status ;
1438
1436
@@ -1460,7 +1458,7 @@ nfsd4_cld_grace_done(struct nfsd_net *nn)
1460
1458
}
1461
1459
1462
1460
cup -> cu_u .cu_msg .cm_cmd = Cld_GraceDone ;
1463
- ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg );
1461
+ ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg , nn );
1464
1462
if (!ret )
1465
1463
ret = cup -> cu_u .cu_msg .cm_status ;
1466
1464
@@ -1524,7 +1522,7 @@ nfsd4_cld_get_version(struct nfsd_net *nn)
1524
1522
goto out_err ;
1525
1523
}
1526
1524
cup -> cu_u .cu_msg .cm_cmd = Cld_GetVersion ;
1527
- ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg );
1525
+ ret = cld_pipe_upcall (cn -> cn_pipe , & cup -> cu_u .cu_msg , nn );
1528
1526
if (!ret ) {
1529
1527
ret = cup -> cu_u .cu_msg .cm_status ;
1530
1528
if (ret )
0 commit comments