Re: Regression due to 0c44c2d0f459 x86: Use asm goto to implementbetter modify_and_test() functions

From: Ingo Molnar
Date: Wed Dec 04 2013 - 04:00:07 EST



* H. Peter Anvin <hpa@xxxxxxxxx> wrote:

> Hi guys,
>
> 0c44c2d0f459 x86: Use asm goto to implement better modify_and_test()
> functions
>
> causes a regression, because it incorrectly changed the constraints of
> bitops.
>
> Specifically, the GEN_BINARY_RMWcc() hardcodes a constraint as "er", but
> it needs to be "Ir" for the bitops themselves. "I" is correct (as
> opposed to "J" even on 64 bits, because we only generate the 64-bit
> version when we have a register operand.
>
> Unfortunately there isn't a way we can get gcc+gas to generate a version
> with an offset pointer.

Does the regression manifest itself in any actual breakage - if yes,
how does it look like? (People experiencing similar symptoms will be
helped by seeing a fix matching their problems.)

Thanks,

ngo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/