[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080602103643.GA21285@elte.hu>
Date: Mon, 2 Jun 2008 12:36:43 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Benjamin Herrenschmidt <benh@...nel.crashing.org>,
David Miller <davem@...emloft.net>, linux-arch@...r.kernel.org,
scottwood@...escale.com, linuxppc-dev@...abs.org,
alan@...rguk.ukuu.org.uk, linux-kernel@...r.kernel.org,
tpiepho@...escale.com
Subject: Re: MMIO and gcc re-ordering issue
* Linus Torvalds <torvalds@...ux-foundation.org> wrote:
> > Here's a UNTESTED patch for x86 that may or may not compile and
> > work, and which serializes (on a compiler level) the IO accesses
> > against regular memory accesses.
>
> Ok, so it at least boots on x86-32. Thus probably on x86-64 too (since
> the code is now shared). I didn't look at whether it generates much
> bigger code due to the potential extra serialization, but some of the
> code generation I looked at looked fine.
>
> IOW, it doesn't at least create any _obviously_ worse code, and it
> should be arguably safer than assuming the compiler does volatile
> accesses the way we want it to.
ok, to pursue this topic of making readl*/writel*() more robust i picked
up your patch into -tip and created a new topic branch for it:
tip/x86/mmio.
The patch passed initial light testing in -tip (~30 successful random
self-builds and bootups on various mixed 32-bit/64-bit boxes) but it's
still v2.6.27 material IMO.
Failures in this area are subtle so there's no good way to tell whether
it works as intended - we need wider testing. I've also added the
tip/x86/mmio topic to tip/auto-x86-next rules as well so these changes
will be picked up by tomorrow's linux-next tree as well, and by the next
-mm iteration.
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists