From: Nick Piggin <npiggin@suse.de>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Hugh Dickins <hugh@veritas.com>,
Linux Memory Management List <linux-mm@kvack.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: Re: [patch] mm: fix PageUptodate memory ordering bug
Date: Sun, 23 Dec 2007 22:35:04 +0100 [thread overview]
Message-ID: <20071223213504.GA1285@wotan.suse.de> (raw)
In-Reply-To: <alpine.LFD.0.9999.0712230900310.21557@woody.linux-foundation.org>
On Sun, Dec 23, 2007 at 09:22:17AM -0800, Linus Torvalds wrote:
>
>
> On Sun, 23 Dec 2007, Nick Piggin wrote:
> >
> > It's not actually increasing size by that much here... hmm, do you have
> > CONFIG_X86_PPRO_FENCE defined, by any chance?
> >
> > It looks like this gets defined by default for i386, and also probably for
> > distro configs. Linus? This is a fairly heavy hammer for such an unlikely bug on
> > such a small number of systems (that admittedly doesn't even fix the bug in all
> > cases anyway). It's not only heavy for my proposed patch, but it also halves the
> > speed of spinlocks. Can we have some special config option for this instead?
>
> A special config option isn't great, since vendors would probably then
> enable it for those old P6's.
>
> But maybe an "alternative()" thing that depends on a CPU capability?
>
> Of course, it definitely *is* true that the number of CPU's that have that
> bug _and_ are actually used in SMP environments is probably vanishingly
> small. So maybe even vendors don't really care any more, and we could make
> the PPRO_FENCE thing a thing of the past.
>
> There's actually a few different PPro errata. There's #51, which is an IO
> ordering thing, and can happen on UP too. There's #66, which breaks CPU
> ordering, and is SMP-only (and which is probably at least *mostly* fixed
> by PPRO_FENCE), and there is #92 which can cause cache incoherency and
> where PPRO_FENCE *may* indirectly help.
>
> We could decide to just ignore all of them, or perhaps ignore all but #51.
> I think Alan still has an old four-way PPro hidden away somewhere, but
> he's probably one of the few people who could even *test* this thing.
>
> Or we could make PPRO_FENCE just be something that you have to enable by
> hand, rather than enabling it automatically for a set of CPU's. That way
> Alan can add it to his config, and everybody else can clear it if they
> decide that they don't have one of the old 200MHz PPro's any more..
Yes I would prefer it to be something you can turn off completely. I think
having alternative() would be slightly overkill, and it still costs a fair
bit of icache. We could take Andi's good idea of printing a warning and
enabling just a single CPU, which would probably be reasonable defence
against #66 and #91.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2007-12-23 21:35 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-18 1:26 Nick Piggin
2007-12-22 8:57 ` Andrew Morton
2007-12-22 12:14 ` Hugh Dickins
2007-12-23 6:54 ` Nick Piggin
2007-12-23 5:57 ` Nick Piggin
2007-12-23 6:32 ` Andrew Morton
2007-12-23 7:15 ` Nick Piggin
2007-12-23 7:29 ` Andrew Morton
2007-12-23 9:14 ` Nick Piggin
2007-12-23 9:28 ` Andrew Morton
2007-12-23 16:02 ` Andi Kleen
2007-12-30 16:33 ` Ingo Molnar
2008-01-01 23:26 ` Nick Piggin
2008-01-02 21:01 ` Andi Kleen
2008-01-03 3:32 ` Nick Piggin
2008-01-03 13:08 ` Andi Kleen
2007-12-23 17:22 ` Linus Torvalds
2007-12-23 21:35 ` Nick Piggin [this message]
2007-12-23 22:41 ` Nick Piggin
2008-01-01 23:41 ` Alan Cox
2008-01-02 11:02 ` [patch] i386: avoid expensive ppro ordering workaround for default 686 kernels Nick Piggin
2008-01-02 13:44 ` Alan Cox
2008-01-03 4:17 ` Nick Piggin
2008-01-03 14:23 ` Alan Cox
2008-01-03 20:20 ` Benjamin Herrenschmidt
2008-01-03 22:23 ` Alan Cox
2008-01-03 23:10 ` Nick Piggin
2008-01-04 16:27 ` Alan Cox
2008-01-07 0:12 ` Nick Piggin
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=20071223213504.GA1285@wotan.suse.de \
--to=npiggin@suse.de \
--cc=akpm@linux-foundation.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=benh@kernel.crashing.org \
--cc=hugh@veritas.com \
--cc=linux-mm@kvack.org \
--cc=torvalds@linux-foundation.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