FC11 on Phenom X4: suddenly non-SMP?

Discussion in 'Installation/Configuration' started by kaza, Jul 17, 2009.

  1. kaza

    kaza New Member


    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:

    Thank in advance for any help,
  2. falko

    falko Super Moderator ISPConfig Developer

    What are the outputs of
    uname -a
    cat /proc/cpuinfo
  3. kaza

    kaza New Member

    Hi falco,
    thanks for the reply.

    The output of "uname -a" is:

    Linux localhost.localdomain #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?

  4. falko

    falko Super Moderator ISPConfig Developer

    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?
  5. kaza

    kaza New Member

    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?

  6. kaza

    kaza New Member

    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.


Share This Page