From: Andi Kleen <andi@firstfloor.org>
To: Ingo Molnar <mingo@elte.hu>
Cc: Andi Kleen <andi@firstfloor.org>,
tglx@linutronix.de, linux-kernel@vger.kernel.org,
"H. Peter Anvin" <hpa@zytor.com>
Subject: Re: More breakage in native_rdtsc out of line in git-x86
Date: Wed, 9 Jan 2008 18:48:00 +0100 [thread overview]
Message-ID: <20080109174800.GA15346@one.firstfloor.org> (raw)
In-Reply-To: <20080109163017.GG17739@elte.hu>
On Wed, Jan 09, 2008 at 05:30:18PM +0100, Ingo Molnar wrote:
>
> * Andi Kleen <andi@firstfloor.org> wrote:
>
> > On Wed, Jan 09, 2008 at 04:22:08PM +0100, Ingo Molnar wrote:
> > >
> > > * Andi Kleen <andi@firstfloor.org> wrote:
> > >
> > > > > nope, it's a 64-bit setup/dependency bug/problem: the vsyscall mappings
> > > > > are installed via an __initcall, and that's too late for early use. The
> > > > > combo patch below fixed the crash for me, does it work on your box too?
> > > >
> > > > That gives
> > > >
> > > > /home/lsrc/quilt/linux/arch/x86/kernel/setup_64.c: In function 'setup_arch':
> > > > /home/lsrc/quilt/linux/arch/x86/kernel/setup_64.c:468: error: implicit declarati
> > > > on of function 'map_vsyscall'
> > >
> > > i guess you have an old repository.
> >
> > I just applied the patch you sent out against yesterday's git-x86.
>
> then you have a truly ancient x86.git repository ;-)
I update only infrequently because frankly git's remote branch tracking
is a mess. At least it doesn't really work for x86#mm here.
I usually have to blow away the repository and reclone
to get back to a sane state.
>
> think of x86.git#mm as an open development tree. It's high-flux, based
> against Linux-bleeding-edge, it's frequently updated (daily, sometimes
> hourly), breakages are possible (and likely) and fixes and other
> feedback is more than welcome. And please feel free to complain about
Right now Jan's cpa change you merged makes the cpa selftest to not pass
anymore on 32bit. While that was likely a latent bug it just
triggered it's a little inconvenient.
There's also the problem on NX handling still not being right.
> patches that are included. (like you did in the past) Also please try to
> post your patches as early as possible instead of in big chunks - last
> week's 75 patches patchbomb from you was (and still is) ... challenging
There are still quite a lot outstanding.
% wc -l patches/series
90 patches/series
Some of that is debug or tbd or obsolete, but most isn't.
> > > since yesterday there's a full barrier around rdtsc.
> >
> > Great.
>
> i have measured the impact of the barriers and it was in the noise
> level. Barriers are notoriously easy to get wrong (because almost
> nothing tells the programmer that they are wrong), that's why i did this
> barrier-safe rdtsc() [& friends]. We had so much trouble with RDTSC
> during the past 10 years of its existence that being a bit more
> conservative with it is the only really maintainable option.
I would still think that the explicit barriers would make this
all clearer, with long term giving cleaner semantics.
Admittedly I should have written some more comments in the
code.
I'm also a little unhappy on how many function calls the vgtod()
fast path contains now. Long ago it was a really lean function,
but it gets messed up more and more. Back when ->vread was introduced
the latency already suffered significantly (iirc multi digit
percent range), i suspect it now got worse again.
And after all that's still by far the most common system call
(not only for databases; i profiled this using systemtap in some
loads some time ago and it usually came up with >50%)
and quite important for many workloads.
We have a lot far uglier code for less gain in far less critical calls.
-Andi
next prev parent reply other threads:[~2008-01-09 17:45 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-09 3:55 More breakage in native_rdtsc out of line in git-x86 Andi Kleen
2008-01-09 5:21 ` More breakage in native_rdtsc out of line in git-x86 II Andi Kleen
2008-01-09 9:09 ` More breakage in native_rdtsc out of line in git-x86 Ingo Molnar
2008-01-09 14:19 ` Andi Kleen
2008-01-09 15:22 ` Ingo Molnar
2008-01-09 15:51 ` Andi Kleen
2008-01-09 16:30 ` Ingo Molnar
2008-01-09 17:48 ` Andi Kleen [this message]
2008-01-09 20:25 ` Arjan van de Ven
2008-01-09 20:40 ` Andi Kleen
2008-01-09 20:57 ` H. Peter Anvin
2008-01-09 22:09 ` Björn Steinbrink
2008-01-09 22:28 ` Andi Kleen
2008-01-09 22:35 ` Harvey Harrison
2008-01-09 22:41 ` Andi Kleen
2008-01-09 23:21 ` Björn Steinbrink
2008-01-09 23:37 ` Paolo Ciarrocchi
2008-01-11 5:21 ` Cyrill Gorcunov
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=20080109174800.GA15346@one.firstfloor.org \
--to=andi@firstfloor.org \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox