From: Tejun Heo <tj@kernel.org>
To: Rusty Russell <rusty@rustcorp.com.au>
Cc: Jens Axboe <jens.axboe@oracle.com>,
Jerome Marchand <jmarchan@redhat.com>,
linux-kernel@vger.kernel.org,
Christoph Lameter <cl@linux-foundation.org>
Subject: Re: per-cpu stats in block device: overkill?
Date: Mon, 22 Dec 2008 10:55:54 +0900 [thread overview]
Message-ID: <494EF3AA.9040100@kernel.org> (raw)
In-Reply-To: <200812221049.43884.rusty@rustcorp.com.au>
Hello, Rusty.
Rusty Russell wrote:
> Hi Jens, Tejun, Jerome,
>
> I've been auditing alloc_per_cpu users, and got to genhd. The code
> is fairly complex, but I can't help wondering if per-cpu counters
> are overkill. After all, we have a single queue lock.
Yeah, maybe.
> The reason I care is that I'm changing alloc_per_cpu to use the
> static per-cpu area: at 40/80 bytes (32/64 bit) per stat, we'd be
> restricted to a few hundred disks unless the percpu area is enlarged
> (in current patches, a cmdline param). Or, I can change genhd to
> use big_percpu_alloc which will use the current inefficient dynamic
> per-cpu system until we get dynamic per-cpu regions (if ever).
I'm working on local counter (local_t) allocator which is used to
replace percpu allocation in percpu_counter and used as basis for
percpu_ref which replaces module ref counting and will be used to
simplify block/char lifetime rules.
The local counter allocator allocates per-cpu pages and the space
overhead is minimal. If per-cpu stats in genhd is necessary, I think
converting it to percpu local counter allocation should do it.
BTW, why make percpu area static?
Thanks.
--
tejun
next prev parent reply other threads:[~2008-12-22 1:56 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-22 0:19 per-cpu stats in block device: overkill? Rusty Russell
2008-12-22 1:55 ` Tejun Heo [this message]
2008-12-22 3:56 ` Rusty Russell
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=494EF3AA.9040100@kernel.org \
--to=tj@kernel.org \
--cc=cl@linux-foundation.org \
--cc=jens.axboe@oracle.com \
--cc=jmarchan@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rusty@rustcorp.com.au \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.