diff options
Diffstat (limited to 'fs/nfs/nfs4filelayoutdev.c')
-rw-r--r-- | fs/nfs/nfs4filelayoutdev.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/nfs/nfs4filelayoutdev.c b/fs/nfs/nfs4filelayoutdev.c index 661a0f611215..95604f64cab8 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 | |||
668 | * of available devices, and return it. | 668 | * of available devices, and return it. |
669 | */ | 669 | */ |
670 | struct nfs4_file_layout_dsaddr * | 670 | struct nfs4_file_layout_dsaddr * |
671 | filelayout_get_device_info(struct inode *inode, struct nfs4_deviceid *dev_id, gfp_t gfp_flags) | 671 | filelayout_get_device_info(struct inode *inode, |
672 | struct nfs4_deviceid *dev_id, | ||
673 | struct rpc_cred *cred, | ||
674 | gfp_t gfp_flags) | ||
672 | { | 675 | { |
673 | struct pnfs_device *pdev = NULL; | 676 | struct pnfs_device *pdev = NULL; |
674 | u32 max_resp_sz; | 677 | u32 max_resp_sz; |
@@ -708,8 +711,9 @@ filelayout_get_device_info(struct inode *inode, struct nfs4_deviceid *dev_id, gf | |||
708 | pdev->pgbase = 0; | 711 | pdev->pgbase = 0; |
709 | pdev->pglen = max_resp_sz; | 712 | pdev->pglen = max_resp_sz; |
710 | pdev->mincount = 0; | 713 | pdev->mincount = 0; |
714 | pdev->maxcount = max_resp_sz - nfs41_maxgetdevinfo_overhead; | ||
711 | 715 | ||
712 | rc = nfs4_proc_getdeviceinfo(server, pdev); | 716 | rc = nfs4_proc_getdeviceinfo(server, pdev, cred); |
713 | dprintk("%s getdevice info returns %d\n", __func__, rc); | 717 | dprintk("%s getdevice info returns %d\n", __func__, rc); |
714 | if (rc) | 718 | if (rc) |
715 | goto out_free; | 719 | goto out_free; |