Re: d451564 breakage

From: Ingo Molnar
Date: Sat Nov 14 2009 - 04:28:52 EST



* Russell King <rmk+lkml@xxxxxxxxxxxxxxxx> wrote:

> On Sat, Nov 14, 2009 at 01:21:38AM +0100, Ingo Molnar wrote:
> > What i was thinking of was a really simple thing in highmem.c (or
> > rather, in include/linux/highmem.h, after kmap_types.h gets included):
> >
> > #ifndef KM_NMI
> > # define KM_NMI -1
> > #endif
> > #ifndef KM_NMI_PTE
> > # define KM_NMI_PTE -1
> > #endif
> >
> > etc.
>
> That means we need to ensure that kmap_atomic() fails when these are
> used, to avoid kmap_atomic corrupting virtual mappings below the kmap
> area should one of these be used. That means additional run-time code
> in all those implementations - I'd much rather leave that to someone
> else to do.
>
> Alternatively, they could be wrapped with CONFIG_DEBUG_HIGHMEM so they
> aren't normally visible.
>
> In any case, as I've already pointed out, we still need to add
> definitions to all places which define these constants. Having them
> exist as enum constants does not make them visible to the
> preprocessor.
>
> I don't think it's as simple as you're trying to make it. However,
> since you seem to have a solid idea which you're trying to get me to
> implement, maybe it'd just be much simpler and faster if you provided
> that patch.

Since we are going to remove the generic code (the patch for that has
been posted) it doesnt really matter and i'd suggest for you to commit
the ARM patch.

Ingo
--
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/