From patchwork Wed Mar 27 13:18:06 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jeff Layton X-Patchwork-Id: 2350621 Return-Path: X-Original-To: patchwork-linux-nfs@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id E56ECDFE82 for ; Wed, 27 Mar 2013 13:19:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752020Ab3C0NSY (ORCPT ); Wed, 27 Mar 2013 09:18:24 -0400 Received: from mail-ob0-f170.google.com ([209.85.214.170]:53263 "EHLO mail-ob0-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752937Ab3C0NSX (ORCPT ); Wed, 27 Mar 2013 09:18:23 -0400 Received: by mail-ob0-f170.google.com with SMTP id wc20so8164057obb.15 for ; Wed, 27 Mar 2013 06:18:22 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:sender:from:to:cc:subject:date:message-id:x-mailer :in-reply-to:references:x-gm-message-state; bh=q/jyas60htw/5mlTQLuKQ1HzeO9yxC3vCp9ytsv2A2I=; b=jx1m+6YJomUKtQKvBlaDuR2/pLKao7UqURA7ylxFhf3nSX03FWw09fqnIlR06NEUqK lJwYyrQ/EpEqEu1gN1sCNH0ZZ28qRu92Hcc3cgbsItC9ZM4LKgRpero10YaBZkKKwihJ S0/TE/0OANR7aDqOzm6C32bfrPHTXLppYmISDFpCJ8/dVSnU+qKBtRg3nmX2IRM6OOTi 1bFv/+XXI4QXgnOCdT7XwfmyRogakduUjgCd+27uUDzZuQMH04A/S2GvHnjQoLH2nwYh SjUr5PaV8M8qNKYGox+6c40DfzlCbCQzUzXyraTvdfDZylPpknEkH06csPjlfCOqC2E5 5mzg== X-Received: by 10.182.169.103 with SMTP id ad7mr3833773obc.51.1364390302357; Wed, 27 Mar 2013 06:18:22 -0700 (PDT) Received: from salusa.poochiereds.net (cpe-107-015-113-143.nc.res.rr.com. [107.15.113.143]) by mx.google.com with ESMTPS id zc8sm14103721obc.8.2013.03.27.06.18.21 (version=TLSv1 cipher=RC4-SHA bits=128/128); Wed, 27 Mar 2013 06:18:21 -0700 (PDT) From: Jeff Layton To: akpm@linux-foundation.org Cc: linux-kernel@vger.kernel.org, tj@kernel.org, "J. Bruce Fields" , linux-nfs@vger.kernel.org Subject: [PATCH v1 4/6] nfsd: convert nfs4_alloc_stid to use idr_alloc_cyclic Date: Wed, 27 Mar 2013 09:18:06 -0400 Message-Id: <1364390288-30968-5-git-send-email-jlayton@redhat.com> X-Mailer: git-send-email 1.7.11.7 In-Reply-To: <1364390288-30968-1-git-send-email-jlayton@redhat.com> References: <1364390288-30968-1-git-send-email-jlayton@redhat.com> X-Gm-Message-State: ALoCoQkZuWE23MHyfAQ/8Z0+qdIRRRLwerLPco91eVQUL7DSuTDsBX9gVrvveNqEnYqgFDp0CnDt Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org Signed-off-by: Jeff Layton Cc: "J. Bruce Fields" Cc: linux-nfs@vger.kernel.org --- fs/nfsd/nfs4state.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index 2e27430..2efb034 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c @@ -234,7 +234,6 @@ static struct nfs4_stid *nfs4_alloc_stid(struct nfs4_client *cl, struct kmem_cache *slab) { struct idr *stateids = &cl->cl_stateids; - static int min_stateid = 0; struct nfs4_stid *stid; int new_id; @@ -242,7 +241,7 @@ kmem_cache *slab) if (!stid) return NULL; - new_id = idr_alloc(stateids, stid, min_stateid, 0, GFP_KERNEL); + new_id = idr_alloc_cyclic(stateids, stid, 0, 0, GFP_KERNEL); if (new_id < 0) goto out_free; stid->sc_client = cl; @@ -261,10 +260,6 @@ kmem_cache *slab) * amount of time until an id is reused, by ensuring they always * "increase" (mod INT_MAX): */ - - min_stateid = new_id+1; - if (min_stateid == INT_MAX) - min_stateid = 0; return stid; out_free: kfree(stid); @@ -1287,7 +1282,7 @@ static struct nfs4_client *create_client(struct xdr_netobj name, spin_unlock(&nn->client_lock); return NULL; } - idr_init(&clp->cl_stateids); + idr_init_cyclic(&clp->cl_stateids, 0); atomic_set(&clp->cl_refcount, 0); clp->cl_cb_state = NFSD4_CB_UNKNOWN; INIT_LIST_HEAD(&clp->cl_idhash);