Re: [RFC/INCOMPLETE 08/13] x86/entry/64: Migrate 64-bit syscalls to new exit hooks

From: Ingo Molnar
Date: Thu Jun 18 2015 - 06:19:58 EST

* Ingo Molnar <mingo@xxxxxxxxxx> wrote:

> * Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
> > >> Any reason why irq state tracking cannot be done in C as well, like the
> > >> rest of the irq state tracking code?
> > >
> > > Never mind, I see you've done exactly that in patch #12.
> >
> > There are still some TRACE_IRQS_ON, LOCKDEP_SYS_EXIT, and such scattered
> > throughout the asm. it's plausible that even more of that could be moved to
> > C.
> >
> > We could also benchmark and find out how bad it would be if we just always
> > filled pt_regs in completely in syscalls. If the performance hit isn't enough
> > to matter, then we could potentially move the entire syscall path except
> > pt_regs setup and sysret/iret into three C functions.
> The thing is, I'd not be against simplifying pt_regs handling even if it slows
> down things a tiny bit. If anyone wants to reintroduce that complexity we'll see
> how it looks like in isolation, done cleanly.

... and I suspect the reduction of entry points will allow the compiler to do a
better job - so some of the overhead might be won back.

So I'd say we try this approach and complicate it back in the future only if the
numbers warrant it.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at