PDA

View Full Version : FC11 on Phenom X4: suddenly non-SMP?


kaza
17th July 2009, 10:00
Hello,

Few days ago I installed FC11 (after few months with FC9). Soon after the installation,
while watching various updates being downloaded and installed, I opened the system monitor
and saw 4 separate CPU graphs, one per core, just like I did under FC9 before.
Few days later, after downloading "gkrellm" I noticed that I can't set it up to show
4 separate CPU graphs as I had under FC9, only one common CPU graph. Checking the
system monitor I saw that now it too shows only one CPU graph (despite correctly
detecting "AMD Phenom(tm) 9550 Quad-Core Processor". Playing with the "top" command "1"
to switch between "Cpu(s)" statistics and per-core statistics I see that in the "per core"
mode only Cpu0 statistics is shown. It looks like my system suddenly became non-SMP.

I don't remember altering the kernel (yet. I need to add a SCSI driver so I'll need
to recompile the kernel but I haven't read enough explanations of where to get
the sources and how to recompile the whole kernel), I remember downloading
gkrellm-2.3.2-2.fc11.src.rpm after precompiled binaries from
gkrellm-2.3.2-2.fc11.x86_64.rpm didn't show the 4 separate CPU graphs,
and I also downloaded "nedit" both as binaries and as sources
and attempted to compile, got and error:

nedit: error while loading shared libraries: libXp.so.6: cannot open shared object file: No such file or directory

added to the LD_LIBRARY_PATH the directory:

/usr/lib64 which changed the error to:

nedit: error while loading shared libraries: libXp.so.6: wrong ELF class: ELFCLASS64

I also changed the shell used from bash to tcsh (in /etc/passwd, I hope it's correct),
but I don't see how this may affect the non-SMP issue.

Although I have 12 years of UNIX/LINUX experience at work, it had always been as a user,
so I'm a novice LINUX "sysop" and probably made some stupid error somewhere.
Can anyone give me some direction as to where to find the source of the sudden change
of my system behavior? The output of "uname -r" is:

2.6.29.5-191.fc11.x86_64

Thank in advance for any help,
Arie.

falko
18th July 2009, 11:46
What are the outputs of uname -a and cat /proc/cpuinfo?

kaza
18th July 2009, 19:21
What are the outputs of uname -a and cat /proc/cpuinfo?

Hi falco,
thanks for the reply.

The output of "uname -a" is:

Linux localhost.localdomain 2.6.29.5-191.fc11.x86_64 #1 SMP Tue Jun 16 23:23:21 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux

and the output of "cat /proc/cpuinfo" is:

processor : 0
vendor_id : AuthenticAMD
cpu family : 16
model : 2
model name : AMD Phenom(tm) 9550 Quad-Core Processor
stepping : 3
cpu MHz : 1100.000
cache size : 512 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc up rep_good nonstop_tsc pni monitor cx16 lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs
bogomips : 4414.69
TLB size : 1024 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate

===========================================

The line "cpu cores : 1" combined with the fact there is only one
section "processor : 0" seems to correspond to the non-SMP
behavior of "top", "gkrellm" and "system monitor". What I don't understand
is what could've change since the installation because in the beginning
the above apps. displayed 4 separate cores.

Can some BIOS setting disable cores 1-3?
Can some installed package alter the way kernel
understands the CPU architecture?

TIA,
Arie.

falko
19th July 2009, 19:51
Hm, it's an SMP kernel, but it really recognizes just one CPU core... Strange.
Do you know if maybe the kernel got updated?
Did you change any BIOS settings?

kaza
19th July 2009, 23:43
Hm, it's an SMP kernel, but it really recognizes just one CPU core... Strange.
Do you know if maybe the kernel got updated?
Did you change any BIOS settings?

Hi falco,

Althought the "software update" had been run soon after
the installation of FC11 and I think among the selected packages
were some related to kernel development (I'm stil trying to recompile
the kernel in order to add a SCSI HBA driver), I don't think the
number of the kernel had been changed since the installation.

I did change some BIOS settings related to ACPI and APIC (now I
beginning to suspect APIC migh somehow affect the multi-cores
detection) but I'm quite sure I returned the BIOS settings to what they
wre initially. Initially both ACPI and APIC were disabled in the BIOS,
I attempted to enable them, got stuck during boot, remembered that
I had to use "linux noapic" in order to have the installation stating
at all so I returned the APIC and ACPI to "disabled".

After doing some Googling on "ACPI"/"APIC", I stumbled on a "dmesg"
command, run it and the CPU-relevant lines of the output look suspicious:

CPU 0/0x0 -> Node 0
tseg: 0000000000
CPU: Physical Processor ID: 0
CPU: Processor Core ID: 0
using C1E aware idle routine
SMP alternatives: switching to UP code
Freeing SMP alternatives: 30k freed
ACPI: Core revision 20081204
ACPI: setting ELCR to 0200 (from 0c80)
ftrace: converting mcount calls to 0f 1f 44 00 00
ftrace: allocating 18886 entries in 149 pages
Setting APIC routing to flat
weird, boot CPU (#0) not listed by the BIOS.
SMP motherboard not detected.
Setting APIC routing to flat
SMP disabled
Brought up 1 CPUs
Total of 1 processors activated (4415.12 BogoMIPS).

What other info can I supply to shed more light on this problem?

TIA,
Arie.

kaza
22nd July 2009, 22:38
Hi again falco,

Thanks to your hints I was able to solve the problem: after doing MANY experiments
with BIOS settings (because I forgot what did I change since FC11 installation) I finally
found the combination of ACPI/APIC settings that allowed the kernel to recognize
the 4 cores and now the apps can see al 4 of them. What caused me to not set the
correct settings was that during the FC9 installation the installation hang and after
some Googling I found that the only way to proceed was to use the "noapic" switch
so I assumed it should be turned off for SMP, a wrong assumption.

Anyway, now the apps see all 4 cores, the BIOS settings relevant to CPU are written
down in a notebook which'll be kept where I can find it and I can proceed to the
next problem: recompiling the kernel to include a SCSI driver for HBA additional
to the SAS HBA controlling the RAID array on which my LINUX is installed. Or maybe
the regular SCSI suppors is already in the kernel? I'll need to read how can I check
what drivers are in the kernel.

Thanks,
Arie.