From: Kent Overstreet <koverstreet@google.com>
To: Steven Whitehouse <swhiteho@redhat.com>
Cc: akpm@linux-foundation.org, tj@kernel.org, axboe@kernel.dk,
nab@linux-iscsi.org, bcrl@kvack.org,
linux-kernel@vger.kernel.org,
Stephen Rothwell <sfr@canb.auug.org.au>,
Fengguang Wu <fengguang.wu@intel.com>
Subject: Re: [PATCH 03/10] idr: Rewrite ida
Date: Wed, 19 Jun 2013 16:38:36 -0700 [thread overview]
Message-ID: <20130619233836.GA6986@localhost> (raw)
In-Reply-To: <1371634822.2735.9.camel@menhir>
On Wed, Jun 19, 2013 at 10:40:22AM +0100, Steven Whitehouse wrote:
> Hi,
>
> On Tue, 2013-06-18 at 17:02 -0700, Kent Overstreet wrote:
> > This is a new, from scratch implementation of ida that should be
> > simpler, faster and more space efficient.
> >
> [...]
>
> >
> > This does mean that the entire bitmap is stored in one contiguous memory
> > allocation - and as currently implemented we won't be able to allocate
> > _quite_ as many ids as with the previous implementation.
> >
> > I don't expect this to be an issue in practice since anywhere this is
> > used, an id corresponds to a struct allocation somewher else - we can't
> > allocate an unbounded number of ids, we'll run out of memory somewhere
> > else eventually, and I expect that to be the limiting factor in
> > practice.
> >
> > If a user/use case does come up where this matters I can add some
> > sharding (or perhaps add a separate big_ida implementation) - but the
> > extra complexity would adversely affect performance for the users that
> > don't need > millions of ids, so I intend to leave the implementation as
> > is until if and when this becomes an issue.
> >
>
> Millions of IDs is something that is fairly normal for DLM, since there
> will be two DLM locks per cached inode with GFS2 and people tend to use
> it on pretty large servers with lots of memory,
Thanks, I wasn't aware of that. Is the 31 bits for the id limitation an
issue for you? While I'm at changing ids to longs should be fairly
trivial.
next prev parent reply other threads:[~2013-06-19 23:38 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-19 0:02 [PATCH v2] lib/idr.c rewrite, percpu ida/tag allocator Kent Overstreet
2013-06-19 0:02 ` [PATCH 03/10] idr: Rewrite ida Kent Overstreet
2013-06-19 9:40 ` Steven Whitehouse
2013-06-19 23:38 ` Kent Overstreet [this message]
2013-06-21 16:33 ` David Teigland
2013-06-19 0:02 ` [PATCH 04/10] idr: Percpu ida Kent Overstreet
2013-06-19 0:02 ` [PATCH 05/10] idr: Kill old deprecated idr interfaces Kent Overstreet
2013-06-19 0:02 ` [PATCH 06/10] idr: Rename idr_get_next() -> idr_find_next() Kent Overstreet
2013-06-19 0:02 ` [PATCH 08/10] idr: Reimplement idr on top of ida/radix trees Kent Overstreet
-- strict thread matches above, loose matches on Subject: below --
2013-07-06 5:08 [PATCH v3] lib/idr.c rewrite, percpu ida/tag allocator Kent Overstreet
2013-07-06 5:08 ` [PATCH 03/10] idr: Rewrite ida Kent Overstreet
2013-08-07 17:34 IDA/IDR rewrite, percpu ida Kent Overstreet
2013-08-07 17:34 ` [PATCH 03/10] idr: Rewrite ida Kent Overstreet
2013-08-07 20:22 ` Tejun Heo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130619233836.GA6986@localhost \
--to=koverstreet@google.com \
--cc=akpm@linux-foundation.org \
--cc=axboe@kernel.dk \
--cc=bcrl@kvack.org \
--cc=fengguang.wu@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nab@linux-iscsi.org \
--cc=sfr@canb.auug.org.au \
--cc=swhiteho@redhat.com \
--cc=tj@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).