Messages in this thread |  | | | Date | Mon, 6 Jun 2011 17:59:53 +0200 | | From | Ingo Molnar <> | | Subject | Re: [PATCH v5 8/9] x86-64: Emulate legacy vsyscalls |
| |
* pageexec@freemail.hu <pageexec@freemail.hu> wrote:
> On 6 Jun 2011 at 17:26, Ingo Molnar wrote: > > > > > * pageexec@freemail.hu <pageexec@freemail.hu> wrote: > > > > > > > a page fault is never a fast path, after all the cpu has just > > > > > taken an exception (vs. the syscall/sysenter style actually > > > > > fast user->kernel transition) and is about to make page table > > > > > changes (and possibly TLB flushes). > > > > > > > > Sure it is. It's a path that's optimized carefully and needs to > > > > be as fast as possible. Just because it's annoyingly slow > > > > doesn't mean we get to make it even slower. > > > > > > sorry, but stating that the pf handler is a fast path doesn't > > > make it so ;) [...] > > > > Are you talking about the Linux kernel? > > yes, what else? ;)
Dunno, Windows perhaps? You were talking about a page fault handler that was a slowpath, you cannot possibly have meant Linux with that.
> > FYI, incredible amount of work has gone into making pagefaults as > > fast and scalable as possible. > > i wasn't talking about scalability (it's irrelevant anyway here), > only speed. [...]
Which part of "fast and scalable" did you not understand?
Just a couple of days ago i noticed a single cycle inefficiency in the pagefault fastpath, introduced in the 3.0 merge window. I requested (and got) an urgent fix for that:
b80ef10e84d8: x86: Move do_page_fault()'s error path under unlikely()
| Ingo suggested SIGKILL check should be moved into slowpath | function. This will reduce the page fault fastpath impact | of this recent commit: | | 37b23e0525d3: x86,mm: make pagefault killable
I treated it as a performance regression.
So i ask you again, what is your basis for calling the #PF path on Linux a 'slowpath'? Is Linus's and my word and 5 years of Git history showing that it's optimized as a fastpath not enough proof for you?
Thanks,
Ingo
|  |