diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfsd/nfs4state.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index d91d6dbf698a..2e27430b9070 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c | |||
@@ -242,9 +242,8 @@ kmem_cache *slab) | |||
242 | if (!stid) | 242 | if (!stid) |
243 | return NULL; | 243 | return NULL; |
244 | 244 | ||
245 | if (!idr_pre_get(stateids, GFP_KERNEL)) | 245 | new_id = idr_alloc(stateids, stid, min_stateid, 0, GFP_KERNEL); |
246 | goto out_free; | 246 | if (new_id < 0) |
247 | if (idr_get_new_above(stateids, stid, min_stateid, &new_id)) | ||
248 | goto out_free; | 247 | goto out_free; |
249 | stid->sc_client = cl; | 248 | stid->sc_client = cl; |
250 | stid->sc_type = 0; | 249 | stid->sc_type = 0; |