[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080426085600.GA5891@elte.hu>
Date: Sat, 26 Apr 2008 10:56:00 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: "H. Peter Anvin" <hpa@...or.com>, linux-kernel@...r.kernel.org,
Andrew Morton <akpm@...ux-foundation.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [git pull] x86 PAT changes
* Linus Torvalds <torvalds@...ux-foundation.org> wrote:
> On Fri, 25 Apr 2008, H. Peter Anvin wrote:
> >
> > The problem is that that can create cached/uncached aliases, which
> > can cause some processors to lock up (especially AMD is known to
> > have a lot of errata in this area.)
>
> Umm.. I don't think you understand. Right now, NONPROMISC_DEVMEM
> doesn't just disable mmap() on /dev/mem, it disables totally regular
> reads and writes too. That seems pretty damn excessive.
>
> If it was just mmap(), I don't think it would matter much. I don't
> think we traditionally even supported mmap() on real RAM (because the
> page counting would get confused), and that actually got supported
> only thanks to VM changes that made it possible.
>
> But read/write has always been supported, and shouldn't cause any
> cached/uncached aliases!
You are right, there should be no architectural need to make PAT
dependent on nonpromisc-devmem, and thus the patch below should be safe.
In theory even mmap() of /dev/mem should be safe this way - as all
memtypes are properly tracked.
The thinking behind this dependency was three-fold:
- historic: from the days when the PAT patchset didnt do fully correct
tracking yet
- practical: that PAT would be utilized in newer distros on newer
systems - with older distros on older systems not really wanting
(or needing) neither /dev/mem restrictions nor PAT
- paranoia: one less degree of freedom to take into account
Ingo
----------------------->
Subject: x86 PAT: decouple from nonpromisc devmem
From: Ingo Molnar <mingo@...e.hu>
Date: Sat Apr 26 10:26:52 CEST 2008
Linus pointed it out that PAT should not depend on NONPROMISC_DEVMEM.
Also make PAT non-default.
Signed-off-by: Ingo Molnar <mingo@...e.hu>
---
arch/x86/Kconfig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Index: linux-x86.q/arch/x86/Kconfig
===================================================================
--- linux-x86.q.orig/arch/x86/Kconfig
+++ linux-x86.q/arch/x86/Kconfig
@@ -1042,9 +1042,9 @@ config MTRR
See <file:Documentation/mtrr.txt> for more information.
config X86_PAT
- def_bool y
+ bool
prompt "x86 PAT support"
- depends on MTRR && NONPROMISC_DEVMEM
+ depends on MTRR
help
Use PAT attributes to setup page level cache control.
--
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