path: root/fs/nfs/nfs4filelayoutdev.c
diff options
authorTrond Myklebust <Trond.Myklebust@netapp.com>2013-05-20 11:42:54 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2013-06-06 16:24:37 -0400
commitcd5875fefe09b1921ea5845890009c9b2386d566 (patch)
tree1ebbdd06601949100aba71fd13c93f823045dfd5 /fs/nfs/nfs4filelayoutdev.c
parentNFSv4.1: Ensure that test_stateid and free_stateid use correct credentials (diff)
NFSv4.1: Use layout credentials for get_deviceinfo calls
This is not strictly needed, since get_deviceinfo is not allowed to return NFS4ERR_ACCESS or NFS4ERR_WRONG_CRED, but lets do it anyway for consistency with other pNFS operations. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4filelayoutdev.c')
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/nfs/nfs4filelayoutdev.c b/fs/nfs/nfs4filelayoutdev.c
index 661a0f611215..0493dbd129c5 100644
--- a/fs/nfs/nfs4filelayoutdev.c
+++ b/fs/nfs/nfs4filelayoutdev.c
@@ -668,7 +668,10 @@ decode_and_add_device(struct inode *inode, struct pnfs_device *dev, gfp_t gfp_fl
* of available devices, and return it.
struct nfs4_file_layout_dsaddr *
-filelayout_get_device_info(struct inode *inode, struct nfs4_deviceid *dev_id, gfp_t gfp_flags)
+filelayout_get_device_info(struct inode *inode,
+ struct nfs4_deviceid *dev_id,
+ struct rpc_cred *cred,
+ gfp_t gfp_flags)
struct pnfs_device *pdev = NULL;
u32 max_resp_sz;
@@ -709,7 +712,7 @@ filelayout_get_device_info(struct inode *inode, struct nfs4_deviceid *dev_id, gf
pdev->pglen = max_resp_sz;
pdev->mincount = 0;
- rc = nfs4_proc_getdeviceinfo(server, pdev);
+ rc = nfs4_proc_getdeviceinfo(server, pdev, cred);
dprintk("%s getdevice info returns %d\n", __func__, rc);
if (rc)
goto out_free;