* H. Peter Anvin <[EMAIL PROTECTED]> wrote: >> as an intermediate fix, how about following the attribute of the >> already existing mapping, instead of rejecting the ioremap due to the >> conflict? I.e. something like below? > > The correct behaviour probably would be to go with the most > restrictive caching behaviour, i.e. uncached in this case.
yeah. Or, to be on the safest side, forcing UC in this case. We'll have a warning message anyway, so it wont go unnoticed - but we wont break drivers. Ingo ---------> Subject: x86: patches/pat-conflict-fixup.patch From: Ingo Molnar <[EMAIL PROTECTED]> Signed-off-by: Ingo Molnar <[EMAIL PROTECTED]> --- arch/x86/mm/pat.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) Index: linux-x86.q/arch/x86/mm/pat.c =================================================================== --- linux-x86.q.orig/arch/x86/mm/pat.c +++ linux-x86.q/arch/x86/mm/pat.c @@ -174,7 +174,12 @@ int reserve_mattr(u64 start, u64 end, un current->comm, current->pid, start, end, cattr_name(attr), cattr_name(ml->attr)); - err = -EBUSY; + /* + * Force UC on a conflict: + */ + ma->attr = _PAGE_UC; + if (*fattr) + *fattr = _PAGE_UC; break; } } else if (ml->start >= end) { -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/