From: Ingo Molnar <mingo@elte.hu>
To: Frederik Deweerdt <frederik.deweerdt@xprog.eu>
Cc: andi@firstfloor.org, tglx@linutronix.de, hpa@zytor.com,
linux-kernel@vger.kernel.org,
Jeremy Fitzhardinge <jeremy@goop.org>
Subject: Re: [patch] tlb flush_data: replace per_cpu with an array
Date: Mon, 12 Jan 2009 22:46:43 +0100 [thread overview]
Message-ID: <20090112214643.GD7320@elte.hu> (raw)
In-Reply-To: <20090112213539.GA10720@gambetta>
* Frederik Deweerdt <frederik.deweerdt@xprog.eu> wrote:
> Hi,
>
> On x86_64 flush tlb data is stored in per_cpu variables. This is
> unnecessary because only the first NUM_INVALIDATE_TLB_VECTORS entries
> are accessed.
>
> This patch aims at making the code less confusing (there's nothing
> really "per_cpu") by using a plain array. It also would save some memory
> on most distros out there (Ubuntu x86_64 has NR_CPUS=64 by default).
indeed, well spotted!
This construct was indeed an abuse of the per_cpu facilities.
Note that beyond the obvious memory savings, your patch should make the
code a bit faster and a bit smaller as well in the SMP TLB flush codepath:
the smp_flush_state data structure is 64 (or 128) bytes so static array
arithmetics will be faster than the per_cpu indirection.
I have applied your patch to tip/x86/mm, thanks Frederik!
Ingo
next prev parent reply other threads:[~2009-01-12 21:47 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-12 21:35 [patch] tlb flush_data: replace per_cpu with an array Frederik Deweerdt
2009-01-12 21:46 ` Ingo Molnar [this message]
2009-01-12 21:57 ` Andi Kleen
2009-01-12 22:10 ` Frederik Deweerdt
2009-01-12 22:32 ` Andi Kleen
2009-01-12 22:50 ` Ingo Molnar
2009-01-12 22:40 ` Ingo Molnar
2009-01-12 22:59 ` H. Peter Anvin
2009-01-13 2:43 ` Andi Kleen
2009-01-13 12:28 ` Ingo Molnar
2009-01-12 22:34 ` Ravikiran G Thirumalai
2009-01-12 23:00 ` Ingo Molnar
2009-01-12 23:09 ` Ingo Molnar
2009-01-13 2:14 ` Ravikiran G Thirumalai
2009-01-13 12:00 ` Peter Zijlstra
2009-01-13 12:33 ` Ingo Molnar
2009-01-13 18:13 ` Ravikiran G Thirumalai
2009-01-13 18:34 ` Ingo Molnar
2009-01-13 18:42 ` Ravikiran G Thirumalai
2009-01-14 7:31 ` Ingo Molnar
2009-01-15 7:15 ` Ravikiran G Thirumalai
2009-01-14 9:08 ` Andi Kleen
2009-01-14 14:41 ` Frederik Deweerdt
2009-01-14 15:20 ` Andi Kleen
2009-01-14 15:10 ` Frederik Deweerdt
2009-01-12 22:54 ` Mike Travis
2009-01-12 23:51 ` Frederik Deweerdt
2009-01-12 23:57 ` Mike Travis
2009-01-13 0:01 ` Ingo Molnar
2009-01-13 3:36 ` Andi Kleen
2009-01-13 12:14 ` Ingo Molnar
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=20090112214643.GD7320@elte.hu \
--to=mingo@elte.hu \
--cc=andi@firstfloor.org \
--cc=frederik.deweerdt@xprog.eu \
--cc=hpa@zytor.com \
--cc=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
/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.