[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090331002100.GA10490@linux-os.sc.intel.com>
Date: Mon, 30 Mar 2009 17:21:00 -0700
From: "Pallipadi, Venkatesh" <venkatesh.pallipadi@...el.com>
To: Arkadiusz Miskiewicz <a.miskiewicz@...il.com>
Cc: "Pallipadi, Venkatesh" <venkatesh.pallipadi@...el.com>,
"Siddha, Suresh B" <suresh.b.siddha@...el.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: 2.6.29 git master and PAT problems
On Mon, Mar 30, 2009 at 04:25:11PM -0700, Arkadiusz Miskiewicz wrote:
> On Tuesday 31 of March 2009, Arkadiusz Miskiewicz wrote:
> > On Monday 30 of March 2009, Pallipadi, Venkatesh wrote:
> >
> > More info follows. Now I've switched to
> > e1c502482853f84606928f5a2f2eb6da1993cda1 which contains latest drm fixes
> > and now I get much lower numbers of PAT errors but still.
>
> Also when I switch t400 into discrete mode (radeon hd 3400 instead
> of integrated intel GM45) I get such errors (probably unrelated
> to these seen when using intel):
>
> [ 419.187657] X:10550 conflicting memory types cfff0000-d0000000 uncached<->uncached-minus
> [ 419.187670] reserve_memtype failed 0xcfff0000-0xd0000000, track uncached, req write-back
> [ 419.553914] X:10550 conflicting memory types cfff0000-d0000000 uncached<->uncached-minus
> [ 419.553923] reserve_memtype failed 0xcfff0000-0xd0000000, track uncached, req write-back
> [ 419.813592] X:10550 conflicting memory types cfff0000-d0000000 uncached<->uncached-minus
> [ 419.813601] reserve_memtype failed 0xcfff0000-0xd0000000, track uncached, req write-back
> [ 420.100102] X:10550 conflicting memory types cfff0000-d0000000 uncached<->uncached-minus
> [ 420.100111] reserve_memtype failed 0xcfff0000-0xd0000000, track uncached, req write-back
>
>
Yes. This is a different problem than the freeing invalid type one. Are these
errors also with latest git kernel? Can you try the patch below (which is
a part of a bigger cleanup patch I have lined up).
Thanks,
Venki
From: Suresh Siddha <suresh.b.siddha@...el.com>
Fix pat_x_mtrr_type() to use UC_MINUS when the mtrr type return UC. This
is to be consistent with ioremap() and ioremap_nocache() which uses
UC_MINUS.
Signed-off-by: Suresh Siddha <suresh.b.siddha@...el.com>
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@...el.com>
---
arch/x86/mm/ioremap.c | 3 ++-
arch/x86/mm/pat.c | 35 +++++++++++++----------------------
2 files changed, 15 insertions(+), 23 deletions(-)
diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c
index 1fca82b..e07da24 100644
--- a/arch/x86/mm/pat.c
+++ b/arch/x86/mm/pat.c
@@ -182,10 +182,10 @@ static unsigned long pat_x_mtrr_type(u64 start, u64 end, unsigned long req_type)
u8 mtrr_type;
mtrr_type = mtrr_type_lookup(start, end);
- if (mtrr_type == MTRR_TYPE_UNCACHABLE)
- return _PAGE_CACHE_UC;
- if (mtrr_type == MTRR_TYPE_WRCOMB)
- return _PAGE_CACHE_WC;
+ if (mtrr_type != MTRR_TYPE_WRBACK)
+ return _PAGE_CACHE_UC_MINUS;
+
+ return _PAGE_CACHE_WB;
}
return req_type;
--
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