We have server based on Intel S5500 chipset (platform SR1630BC) with dual E5520 (Quad Core with hyper-threading) installed. With 2.6.31.x and 2.6.32.x system number of CPU is 2 instead of 16 (4 logical cores each with 2 threads). barzog@martin-cl2 ~ $ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 26 model name : Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping : 5 cpu MHz : 2266.684 cache size : 8192 KB physical id : 0 siblings : 1 core id : 0 cpu cores : 1 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid bogomips : 4533.36 clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 26 model name : Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping : 5 cpu MHz : 2266.684 cache size : 8192 KB physical id : 1 siblings : 1 core id : 0 cpu cores : 1 apicid : 16 initial apicid : 16 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid bogomips : 4533.32 clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: Kernel config attached. FreeBSD 7.2 shows correct number of CPU (16). Any ideas? Reproducible: Always
Created attachment 222971 [details] kernel config
After enabling ACPI support kernel detect all 16 CPUs. But in same strange way: SMP: Allowing 24 CPUs, 8 hotplug CPUs processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 26 model name : Intel(R) Xeon(R) CPU E5520 @ 2.27GHz stepping : 5 cpu MHz : 2266.239 cache size : 8192 KB physical id : 0 siblings : 8 core id : 0 cpu cores : 4 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 11 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid bogomips : 4532.47 clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management:
(In reply to comment #2) > After enabling ACPI support kernel detect all 16 CPUs. But in same strange way: > > SMP: Allowing 24 CPUs, 8 hotplug CPUs > > processor : 0 > vendor_id : GenuineIntel > cpu family : 6 > model : 26 > model name : Intel(R) Xeon(R) CPU E5520 @ 2.27GHz > stepping : 5 > cpu MHz : 2266.239 > cache size : 8192 KB > physical id : 0 > siblings : 8 > core id : 0 > cpu cores : 4 > apicid : 0 > initial apicid : 0 > fpu : yes > fpu_exception : yes > cpuid level : 11 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov > pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm > constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf > pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 > popcnt lahf_lm tpr_shadow vnmi flexpriority ept vpid > bogomips : 4532.47 > clflush size : 64 > cache_alignment : 64 > address sizes : 40 bits physical, 48 bits virtual > power management: > Okay, first of all, the second /proc/cpuinfo misses your second processor but got the siblings right. Could you give us a copy of your dmesg with a faulty (2.6.3{1,2}.x) kernel and a correctly functioning one? Thanks.
Created attachment 225101 [details] kernel dmesg without acpi
Created attachment 225103 [details] kernel with acpi
Created attachment 225105 [details] /proc/cpuinfo without acpi. only 2 processors
Do you have a Linux kernel that displayed the number of CPUs correctly on /proc/cpuinfo? Could you throw us it's dmesg output?
(In reply to comment #7) > Do you have a Linux kernel that displayed the number of CPUs correctly on > /proc/cpuinfo? Could you throw us it's dmesg output? > It's already atteched. See dmesg.correct. http://bugs.gentoo.org/attachment.cgi?id=225103
I might not be getting something, but since 2.6.33 recognizes all your CPUs correctly (dmesg says it finds 16 CPUs), why don't you just switch to 2.6.33? The /proc/cpuinfo contents in comment #2, is from a 2.6.33 kernel?
(In reply to comment #9) > I might not be getting something, but since 2.6.33 recognizes all your CPUs > correctly (dmesg says it finds 16 CPUs), why don't you just switch to 2.6.33? Nope. All kernels 2.6.31.xx,2.6.32.xx,2.6.33.xx without ACPI detects only 2 CPU. Same kernels (2.6.31.xx,2.6.32.xx,2.6.33.xx) with ACPI detects 24 CPU (8 hotplugged) instead of 16. > The /proc/cpuinfo contents in comment #2, is from a 2.6.33 kernel? Yes
For some reason, it appears you need acpi to properly enumerate the cpus. Can you try booting with pci=nommconf without acpi?
Created attachment 241527 [details] dmesg from 2.6.32.16 without ACPI and pci=nommconf No changes, only 2 processors detected.
Can you post this upstream at http://bugzilla.kernel.org and put the link on this bug, please?
Done. https://bugzilla.kernel.org/show_bug.cgi?id=16523
We'll watch the upstream bug and port and fixes that are appropiate