From: Andrew Morton <akpm@linux-foundation.org>
To: Masami Hiramatsu <mhiramat@redhat.com>
Cc: Ananth N Mavinakayanahalli <ananth@in.ibm.com>,
Jim Keniston <jkenisto@us.ibm.com>,
David Miller <davem@davemloft.net>,
LKML <linux-kernel@vger.kernel.org>,
maneesh@in.ibm.com, Srikar Dronamraju <srikar@linux.vnet.ibm.com>
Subject: Re: [PATCH] kprobe: increase kprobe_hash_table size
Date: Fri, 7 Nov 2008 17:03:07 -0800 [thread overview]
Message-ID: <20081107170307.1a4f815e.akpm@linux-foundation.org> (raw)
In-Reply-To: <4914DAEE.2050301@redhat.com>
On Fri, 07 Nov 2008 19:18:54 -0500 Masami Hiramatsu <mhiramat@redhat.com> wrote:
> Hi Andrew,
>
> Andrew Morton wrote:
> > On Fri, 07 Nov 2008 18:44:30 -0500 Masami Hiramatsu <mhiramat@redhat.com> wrote:
> >
> >> Increase the size of kprobe hash table to 512. It's useful when hundreds
> >> of kprobes were used in the kernel because current size is just 64.
> >>
> >
> > "useful" is a bit vague. How big is the problem which this solves, and
> > how well did it solve it?
>
> For example, when probing enters and exits of syscall-related functions,
> we need more than 500 probes. In that case, each hlist would have 8
> elements in average. With this patch, the hlist would have 1 element in
> average.
>
> I agree that there may be many opinions about what is the best suited size.
> Why I chose 512 was that I thought the table (byte) size was less than or
> equal 4096 even on 64-bit arch.
Well...
text data bss dec hex filename
7036 744 9380 17160 4308 kernel/kprobes.o
7048 744 73892 81684 13f14 kernel/kprobes.o
That's 64 kbytes more memory. It will be kretprobe_table_locks[] which
is hurting here, due to the ____cacheline_aligned.
I expected CONFIG_X86_VSMP=y to make this far worse, but fortunately
that only affects ____cacheline_internodealigned_in_smp.
btw, that array wastes a ton of memory on uniprocessor builds. Using
____cacheline_aligned_in_smp should fix that.
Please always check these thigns with /usr/bin/size.
btw2, could/should kprobe_table[] and kretprobe_inst_table[] be
aggregated into kretprobe_table_locks[]? That would save some memory
and might save some cache misses as well?
Anyway, enough pos-facto code review. Is this change which you're
proposing worth increasing kernel memory usage by 64k?
next prev parent reply other threads:[~2008-11-08 1:04 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-07 23:44 [PATCH] kprobe: increase kprobe_hash_table size Masami Hiramatsu
2008-11-07 23:56 ` Andrew Morton
2008-11-08 0:18 ` Masami Hiramatsu
2008-11-08 1:03 ` Andrew Morton [this message]
2008-11-08 2:33 ` Masami Hiramatsu
2008-11-08 2:46 ` Andrew Morton
2008-11-08 2:50 ` Masami Hiramatsu
2008-11-08 2:53 ` Masami Hiramatsu
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=20081107170307.1a4f815e.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=ananth@in.ibm.com \
--cc=davem@davemloft.net \
--cc=jkenisto@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=maneesh@in.ibm.com \
--cc=mhiramat@redhat.com \
--cc=srikar@linux.vnet.ibm.com \
/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