Re: [patch V2 08/17] x86/entry: Move syscall irq tracing to C code

From: Peter Zijlstra
Date: Thu Oct 24 2019 - 13:40:53 EST


On Thu, Oct 24, 2019 at 09:24:13AM -0700, Andy Lutomirski wrote:
> On Wed, Oct 23, 2019 at 2:30 PM Andy Lutomirski <luto@xxxxxxxxxx> wrote:
> >
> > On Wed, Oct 23, 2019 at 5:31 AM Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
> > >
> > > Interrupt state tracing can be safely done in C code. The few stack
> > > operations in assembly do not need to be covered.
> > >
> > > Remove the now pointless indirection via .Lsyscall_32_done and jump to
> > > swapgs_restore_regs_and_return_to_usermode directly.
> >
> > This doesn't look right.
>
> Well, I feel a bit silly. I read this:
>
> >
> > > #define SYSCALL_EXIT_WORK_FLAGS \
> > > @@ -279,6 +282,9 @@ static void syscall_slow_exit_work(struc
>
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> and I applied the diff in my head to the wrong function, and I didn't
> notice that it didn't really apply there. Oddly, gitweb gets this

I had the same when reviewing these patches; I was almost going to ask
tglx about it on IRC when the penny dropped.