Re: [2.6.25-git18 => 2.6.26-rc1-git1] Xorg crash with xf86MapVidMemerror

From: H. Peter Anvin
Date: Thu May 08 2008 - 17:43:13 EST


Venki Pallipadi wrote:
On Thu, May 08, 2008 at 01:08:01PM -0700, Rufus & Azrael wrote:
Venki Pallipadi a ecrit :
>
> Use UC_MINUS in reserve_memtype call with -1, when MTRR lookup fails for
any
> reason.
>
> Change the logic in mtrr_type_lookup to just get the type from the start
> address. Using start and end adddress is not right/complete as start and
> end can be covered by different mtrr (where old code will fail) or
> start and end can be in same mtrr, but still have some different
> memory type region in between. Using only start is less restrictive and
> deterministic.
>
> Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx>
>
> ---
> arch/x86/kernel/cpu/mtrr/generic.c | 7 ++-----
> arch/x86/mm/pat.c | 8 +-------
> 2 files changed, 3 insertions(+), 12 deletions(-)
>

Hi Venki,

Patch applied on 2.6.26-rc1-git5 and all works fine in X server with CONFIG_X86_PAT=y.

See dmesg and mtrr files attached.


Thanks for reporting the problem and testing the fix.
ingo/thomas/hpa: Can you please pick up this patch. Fixes the PAT regression
reported on this thread.

Hm...

I have *serious* concerns about this; this might paper over this particular problem, but it just isn't *correct*.

The fact that the range check is implemented incorrectly is not an excuse to just dump it and ignore the problem; it should be fixed instead.

-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/