Re: [PATCH RFC V2 3/5] jump_label: if a key has already been initialized, don't nop it out

Steven Rostedt
2011-10-04T18:05:55Z

On Tue, 2011-10-04 at 13:53 -0400, Jason Baron wrote:
> On Tue, Oct 04, 2011 at 09:30:01AM -0700, H. Peter Anvin wrote:
> > On 10/04/2011 07:10 AM, Jason Baron wrote:
> > >
> > > 1) The jmp +0, is a 'safe' no-op that I know is going to initially
> > > boot for all x86. I'm not sure if there is a 5-byte nop that works on
> > > all x86 variants - but by using jmp +0, we make it much easier to debug
> > > cases where we may be using broken no-ops.
> > >
> >
> > There are *plenty*. jmp+0 is about as pessimal as you can get.
> >
> > The current recommendation when you don't know the CPU you're running at is:
> >
> > 3E 8D 74 26 00 (GENERIC_NOP5_ATOMIC)
> >
> > ... on 32 bits and ...
> >
> > 0F 1F 44 00 00 (P6_NOP5_ATOMIC)
> >
> > ... on 64 bits.
> >
> > -hpa
> >
>
> We're currently patching the code at run-time (boot and module load
> time), with the 'ideal' no-op anyway, so the initial no-op doesn't
> really matter much (other than to save patching if the initial and ideal
> match).

Out of correctness, we should still update this to use the proper
"default" nops, as mcount already does.

-- Steve