Intel CPUID with EAX == 11 returns:
ECX Bits 07 - 00: Level number. Same value in ECX input.
Bits 15 - 08: Level type.
^^^^^^^^^^^^^^^^^^^^^^^^ This is level type.
Bits 31 - 16: Reserved.
Intel processor level type mask should be 0xff00, not 0xff0.
[BZ #20119]
* sysdeps/x86/cacheinfo.c (init_cacheinfo): Correct Intel
processor level type mask for CPUID with EAX == 11.
+2016-05-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ [BZ #20119]
+ * sysdeps/x86/cacheinfo.c (init_cacheinfo): Correct Intel
+ processor level type mask for CPUID with EAX == 11.
+
2016-05-19 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/x86/cacheinfo.c (init_cacheinfo): Skip counting
__cpuid_count (11, i++, eax, ebx, ecx, edx);
int shipped = ebx & 0xff;
- int type = ecx & 0xff0;
+ int type = ecx & 0xff00;
if (shipped == 0 || type == 0)
break;
else if (type == 0x200)