On Sat, Jan 12, 2008 at 07:41:16PM -0800, Linus Torvalds wrote:
>
>
> On Sun, 13 Jan 2008, Nick Piggin wrote:
> >
> > mm: introduce pte_special pte bit
>
> What's the point of this?
Well, it's written in the changelog. I'm not asking for it to be merged
or anything just now because obviously it isn't in a patchset with anything
that needs it, just want some comments on the idea.
Myself, I would like such a bit to implement lockless get_user_pages on
x86. The x390 guys want to implement pfn mapped xip with the same bit in
their pagetables.
> > 23 files changed, 147 insertions(+), 37 deletions(-)
>
> That's lots of new (ugly) code, and two totally different paths, that
> aren't even cleanly abstracted, so now there's two separate things that
> are just arbitrarily selected by an #ifdef.
How should it be cleanly abstracted?
> You seem to claim that this is a performance issue, with vm_normal_page()
Hmm, the performance observation was an aside. I'd love to be able to
fix up the existing vm_normal_page as well. Sorry if that wasn't clear.
> eating up to 5% of time on some loads, but it would appear that the main
> thing you did that will speed up vm_normal_page() is the fact that you
> replaced the current
>
> if (unlikely(!pfn_valid(pfn))) {
> print_bad_pte(vma, pte, addr);
> return NULL;
> }
FWIW I have wanted to put this under DEBUG_VM too, but there were
objections.
> Does the code generation really change that radically that this makes any
> real difference?
It's mainly for semantics. Basically: if we have architectures with such
a bit in their ptes anyway for other reasons, I'm hoping we can use it in
vm_normal_page too, because it's just a nicer. (and it is fundamentally
faster for MIXEDMAP mappings, but that's probably not a big issue at this
point)
-
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html