summaryrefslogtreecommitdiff
path: root/fs/nfs/pnfs_dev.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2014-09-11 04:36:31 +0400
committerTrond Myklebust <trond.myklebust@primarydata.com>2014-09-12 21:20:54 +0400
commitd4b18c3e00b8d18fbd316abe9639b91ad416e1f3 (patch)
treebb4e90418ef3aaf994687252d96d6276630dfe20 /fs/nfs/pnfs_dev.c
parentfd41b4748b3b6c1220f926427bf63bef456034a5 (diff)
downloadlinux-d4b18c3e00b8d18fbd316abe9639b91ad416e1f3.tar.xz
pnfs: remove GETDEVICELIST implementation
The current GETDEVICELIST implementation is buggy in that it doesn't handle cursors correctly, and in that it returns an error if the server returns NFSERR_NOTSUPP. Given that there is no actual need for GETDEVICELIST, it has various issues and might get removed for NFSv4.2 stop using it in the blocklayout driver, and thus the Linux NFS client as whole. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'fs/nfs/pnfs_dev.c')
-rw-r--r--fs/nfs/pnfs_dev.c30
1 files changed, 0 insertions, 30 deletions
diff --git a/fs/nfs/pnfs_dev.c b/fs/nfs/pnfs_dev.c
index 82c2836fdb38..aa2ec0015183 100644
--- a/fs/nfs/pnfs_dev.c
+++ b/fs/nfs/pnfs_dev.c
@@ -358,33 +358,3 @@ nfs4_deviceid_mark_client_invalid(struct nfs_client *clp)
}
rcu_read_unlock();
}
-
-int
-nfs4_deviceid_getdevicelist(struct nfs_server *server,
- const struct nfs_fh *fh)
-{
- struct pnfs_devicelist *dlist;
- struct nfs4_deviceid_node *d;
- int error = 0, i;
-
- dlist = kzalloc(sizeof(struct pnfs_devicelist), GFP_NOFS);
- if (!dlist)
- return -ENOMEM;
-
- while (!dlist->eof) {
- error = nfs4_proc_getdevicelist(server, fh, dlist);
- if (error)
- break;
-
- for (i = 0; i < dlist->num_devs; i++) {
- d = nfs4_find_get_deviceid(server, &dlist->dev_id[i],
- NULL, GFP_NOFS);
- if (d)
- nfs4_put_deviceid_node(d);
- }
- }
-
- kfree(dlist);
- return error;
-}
-EXPORT_SYMBOL_GPL(nfs4_deviceid_getdevicelist);