mirror of
git://sourceware.org/git/glibc.git
synced 2025-02-23 13:09:58 +08:00
The meaning of the 25-14 bits in EAX returned from cpuid with EAX = 4 has been changed from "the maximum number of threads sharing the cache" to "the maximum number of addressable IDs for logical processors sharing the cache" if cpuid takes EAX = 11. We need to use results from both EAX = 4 and EAX = 11 to get the number of threads sharing the cache. The 25-14 bits in EAX on Core i7 is 15 although the number of logical processors is 8. Here is a white paper on this: http://software.intel.com/en-us/articles/intel-64-architecture-processor-topology-enumeration/ This patch correctly counts number of logical processors on Intel CPUs with EAX = 11 support on cpuid. Tested on Dinnington, Core i7 and Nehalem EX/EP. It also fixed Pentium Ds workaround since EBX may not have the right value returned from cpuid with EAX = 1. |
||
---|---|---|
.. | ||
bits | ||
elf | ||
fpu | ||
multiarch | ||
____longjmp_chk.S | ||
__longjmp.S | ||
_mcount.S | ||
abort-instr.h | ||
add_n.S | ||
addmul_1.S | ||
backtrace.c | ||
bp-asm.h | ||
bsd-_setjmp.S | ||
bsd-setjmp.S | ||
bzero.S | ||
cacheinfo.c | ||
configure | ||
dl-irel.h | ||
dl-lookupcfg.h | ||
dl-machine.h | ||
dl-runtime.c | ||
dl-tls.h | ||
dl-tlsdesc.h | ||
dl-tlsdesc.S | ||
dl-trampoline.S | ||
ffs.c | ||
ffsll.c | ||
fpu_control.h | ||
hp-timing.c | ||
hp-timing.h | ||
htonl.S | ||
Implies | ||
jmpbuf-offsets.h | ||
jmpbuf-unwind.h | ||
ldbl2mpn.c | ||
link-defines.sym | ||
lshift.S | ||
machine-gmon.h | ||
Makefile | ||
memchr.S | ||
memcmp.S | ||
memcpy_chk.S | ||
memcpy.S | ||
mempcpy_chk.S | ||
mempcpy.S | ||
memset_chk.S | ||
memset.S | ||
memusage.h | ||
mp_clz_tab.c | ||
mul_1.S | ||
rawmemchr.S | ||
rshift.S | ||
rtld-memcmp.c | ||
rtld-memset.c | ||
rtld-strchr.S | ||
rtld-strlen.S | ||
sched_cpucount.c | ||
setjmp.S | ||
stackinfo.h | ||
stpcpy_chk.S | ||
stpcpy.S | ||
strcat.S | ||
strchr.S | ||
strchrnul.S | ||
strcmp.S | ||
strcpy_chk.S | ||
strcpy.S | ||
strcspn.S | ||
strlen.S | ||
strncmp.S | ||
strpbrk.S | ||
strrchr.S | ||
strspn.S | ||
strtok_r.S | ||
strtok.S | ||
sub_n.S | ||
submul_1.S | ||
sysdep.h | ||
tlsdesc.c | ||
tlsdesc.sym | ||
tst-stack-align.h | ||
tst-xmmymm.sh | ||
Versions |