[PATCH v2] x86: Check RTM_ALWAYS_ABORT for RTM [BZ #28033]
Florian Weimer
fweimer@redhat.com
Fri Jul 2 08:40:13 GMT 2021
* H. J. Lu:
>> > Any idea why the microcode update doesn't just clear the RPM bit in
>> > CPUID? This is a bit awkward.
>>
>> I asked it internally.
>
> Here it is
>
> ---
>
> VMM vendors told us that clearing CPUID bits during ucode load is an absolute
> no-go and caused a lot of SW instability in the past (also related to
> VM migration
> challenges where one system has the bit and the other does not).
> ---
I thought we had early microcode loading for that.
This new approach requires patching *everything*, not just glibc. For
example, I have a feeling that qemu-kvm does not pass through the
RTM_ALWAYS_ABORT CPU flag to guests, even though
With your patch, I still see
FAIL: string/tst-memchr-rtm
FAIL: string/tst-memcmp-rtm
FAIL: string/tst-memmove-rtm
FAIL: string/tst-memrchr-rtm
FAIL: string/tst-memset-rtm
FAIL: string/tst-strchr-rtm
FAIL: string/tst-strcpy-rtm
FAIL: string/tst-strlen-rtm
FAIL: string/tst-strncmp-rtm
FAIL: string/tst-strrchr-rtm
error: ../sysdeps/x86/tst-string-rtm.h:63: TSX abort rate: 100.00% (3000 out of 3000)
on a virtualized guest on a machine with this CPU:
cpu family : 6
model : 158
model name : Intel(R) Xeon(R) CPU E3-1240 v6 @ 3.70GHz
stepping : 9
microcode : 0xea
This started after a recent microcode update.
Thanks,
Florian
More information about the Libc-alpha
mailing list