lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:	Thu, 23 Aug 2007 15:05:14 -0400
From:	"Jeff Bloom" <jeff.bloom13@...il.com>
To:	linux-kernel@...r.kernel.org
Subject: kernel version 2.6.11-12 : Apic fires less often on Intel quad Cores x5355 than on other platforms

Problem:      The local apic interrupt fires less often on a Quad core x5355
                    Intel Xeon CPU 2.67GHz
                    than on an Intel 3.2GHz Xeon system running the same kernel
                    version 2.6.11.12

Description:  Specifically the local apic fires 984 times a second on the Quad
                   core and 1000 times on the 3.2GHz Xeon.
                   The expected result is to have both platforms
receive the apic
                   interrupt 1000 times a second.

Question:  Are there any isolated apic patches which may account for
                this behaviour?  Some obscure errata for this apic configured
                with a different divisor?

I certainly see some rework in 2.6.22 kernels apic.c but I'm not sure
it addresses this issue specifically.

Has anyone else encountered this issue?

Detailed info below: (dmesg kernel command line with apic=verbose)

    3.2GHz:
        calibrating APIC timer ...
       ..... CPU clock speed is 3191.0619 MHz.
       ..... host bus clock speed is 199.0476 MHz.

    2.67GHz Quad Core:
   calibrating APIC timer ...
   ..... CPU clock speed is 2659.0967 MHz.
   ..... host bus clock speed is 332.0495 MHz.



Validation of what I'm seeing below:
test 1: running /proc/stat; sleep 1; /proc/stat
  3.2GHz:
              cpu  607 5 487 5620413 1974 25 89 0 <- 1st reading
              cpu  607 5 487 5620815 1974 26 89 0 <- 2nd reading
        delta 402/(4 cpus) = 100.5 <- Adding up deltas (mostly from idle time)
  2.67Ghz: (Quad core)
              cpu  391 1 354 12566716 1028 24 42 0
              cpu  391 1 354 12567503 1028 24 42 0
        delta 787/(8 cpus) = 98.38

I also see the same result looking at LOC in the /proc/interrupts
which confirm 984 interrupts instead of the expected 1000.

cat /proc/interrupts |grep LOC; sleep 1; cat /proc/interrupts |grep LOC
  <inserting cpu labels>
              CPU0       CPU1       CPU2          CPU3       CPU4
   CPU5          CPU6       CPU7
LOC:   15900999   15901079   15900473   15901014   15901027   15901077
  15901022   15901022

LOC:   15901983   15902063   15901457   15901998   15902011   15902061
  15902006   15902006

Following CPU0(15901983-15900999) = 984
The deltas show the apic interrupt interval must not be setup properly
on the Quad Xeon core.

Thanks for any information you can provide.
If you need more information: lspci, full dmesg, etc please let me know.
- Jeff Bloom
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ