pNFS, multiple paths to Data Server not used by pNFS linux client.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

We are testing our pNFS server with linux client, when the server returns multiple paths to a v4 DS via GETDEVINFO, we see that the client validated the paths (does exchange id) but does not use the alternate paths in IO.
Tracing the code path, it seems that when DS is a NFS v3 server, path is added, but for NFS v4 DS server, client setup function callback path fails to add.

Forcing the paths to be added seems to fix the issue, so we think there might be a bug.

We see that when data server is v3, it's setup function does call
rpc_xprt_switch_add_xprt

 
via , static const struct rpc_call_ops rpc_cb_add_xprt_call_ops = {
        .rpc_call_done = rpc_cb_add_xprt_done,
        .rpc_release = rpc_cb_add_xprt_release,
};

 
nfs4_pnfs_ds_connect->_nfs4_pnfs_v3_ds_connect->
rpc_clnt_add_xprt->
rpc_clnt_test_and_add_xprt->
rpc_cb_add_xprt_done->rpc_xprt_switch_add_xprt

but v4 add xprt does not, so a connection for multipathing gets validated for v4, but never added.

nfs4_pnfs_ds_connect->nfs4_pnfs_ds_connect->
rpc_clnt_add_xprt->rpc_clnt_setup_test_and_add_xprt returns error(1) but never adds.

Thanks
-Aditya




--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux