aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2012-01-17 22:04:24 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2012-01-31 18:20:28 -0500
commit9157c31dd610a127bc6f01bc1953cf8b80382040 (patch)
tree0552a17b2f047da4240a62d06b9fe58b162bad35 /include
parentNFSv4: Clean up nfs4_get_state_owner (diff)
downloadlinux-dev-9157c31dd610a127bc6f01bc1953cf8b80382040.tar.xz
linux-dev-9157c31dd610a127bc6f01bc1953cf8b80382040.zip
NFSv4: Replace state_owner->so_owner_id with an ida based allocator
We're unlikely to ever need more than 2^31 simultaneous open owners, so let's replace the custom allocator with the generic ida allocator. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/nfs_fs_sb.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/nfs_fs_sb.h b/include/linux/nfs_fs_sb.h
index e0863d35f753..645537e18bd0 100644
--- a/include/linux/nfs_fs_sb.h
+++ b/include/linux/nfs_fs_sb.h
@@ -3,6 +3,7 @@
#include <linux/list.h>
#include <linux/backing-dev.h>
+#include <linux/idr.h>
#include <linux/wait.h>
#include <linux/nfs_xdr.h>
#include <linux/sunrpc/xprt.h>
@@ -151,9 +152,9 @@ struct nfs_server {
/* the following fields are protected by nfs_client->cl_lock */
struct rb_root state_owners;
- struct rb_root openowner_id;
struct rb_root lockowner_id;
#endif
+ struct ida openowner_id;
struct list_head state_owners_lru;
struct list_head layouts;
struct list_head delegations;