Messages in this thread | | | Date | Thu, 18 Jun 2015 12:19:43 +0200 | From | Ingo Molnar <> | Subject | Re: [RFC/INCOMPLETE 08/13] x86/entry/64: Migrate 64-bit syscalls to new exit hooks |
| |
* Ingo Molnar <mingo@kernel.org> wrote:
> > * Andy Lutomirski <luto@amacapital.net> 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.
Thanks,
Ingo
| |