|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen staging] libxc/x86: correct overflow avoidance check in AMD CPUID handling
commit c9c7ac508b3f65f7d5f9685893096a1b22d8b176
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Wed Sep 25 15:50:58 2019 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Wed Sep 25 15:50:58 2019 +0200
libxc/x86: correct overflow avoidance check in AMD CPUID handling
Commit df29d03f1d ("libxc/x86: avoid certain overflows in CPUID APIC ID
adjustments" introduced a one bit too narrow mask when checking whether
multiplying by 1 (in particular in leaf 1) would result in overflow.
Reported-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
tools/libxc/xc_cpuid_x86.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/libxc/xc_cpuid_x86.c b/tools/libxc/xc_cpuid_x86.c
index b472fbc610..54b0161132 100644
--- a/tools/libxc/xc_cpuid_x86.c
+++ b/tools/libxc/xc_cpuid_x86.c
@@ -403,7 +403,7 @@ static void amd_xc_cpuid_policy(const struct
cpuid_domain_info *info,
* - incrementing ApicIdCoreSize when it's zero (which changes the
* meaning of bits 7:0).
*/
- if ( (regs[2] & 0x7fu) < 0x7fu )
+ if ( (regs[2] & 0xffu) < 0x7fu )
{
if ( (regs[2] & 0xf000u) && (regs[2] & 0xf000u) != 0xf000u )
regs[2] = ((regs[2] + 0x1000u) & 0xf000u) | (regs[2] & 0xffu);
--
generated by git-patchbot for /home/xen/git/xen.git#staging
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |