Re: [PATCH 1/2] x86/nmi: Optimize the check for being in the repeat_nmi code

From: Ingo Molnar
Date: Fri Mar 10 2017 - 02:21:33 EST



* Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:

> > It had nothing to do with speedup. Linus said that the current code makes the
> > assembly programmer in him die a little. I want to cure that.
>
> One might argue that the world would be a better place if the assembly
> programmer in some people died a little.

Joking aside, I'll bite: while in the kernel we try to avoid ever actually
_writing_ new assembly code, assembly programming is still an invaluable skill,
because it indirectly improves all the other 99% of non-assembly .c code:

- Looking at the C compiler's assembly output tells us how close the code is to
optimal.

- Being able to tell whether our C abstractions are too far removed from how the
compiler will map it to machine instructions is invaluable.

- Being able to shape data structures and code in a machine-friendly way.

Much would be lost if the assembly programmer went extinct and it's no
accident that annotated assembly output is just two <Enter> keys away
after launching 'perf top' or 'perf report'. The more developers know
assembly the better, IMHO.

Thanks,

Ingo