Re: [PATCH] x86: Fix AMD K6 indirect call check v2

From: H. Peter Anvin
Date: Sun Apr 21 2013 - 13:07:24 EST


On 04/21/2013 09:49 AM, Andi Kleen wrote:
> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
>
> The AMD K6 errata check relies on timing a indirect call.
> But the way it was written it could be optimized to a direct call.
> Force gcc to actually do a indirect call and not just
> constant resolve the target address.
>
> Found during code review, no runtime testing due to lack
> of hardware.

Maybe it would be even better to just code the indirect call instruction
in assembly?

Something like:

asm volatile("call *%0"
: : "r" (vide)
: "eax", "ecx", "edx");

Gotta love the metal mask(?) fix without bumping the stepping number...

-hpa

--
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/