1
linux/arch
Fernando Luis Vázquez Cao 346b46be5f x86: Add per-cpu stat counter for APIC ICR read tries
In the IPI delivery slow path (NMI delivery) we retry the ICR
read to check for delivery completion a limited number of times.

[ The reason for the limited retries is that some of the places
  where it is used (cpu boot, kdump, etc) IPI delivery might not
  succeed (due to a firmware bug or system crash, for example)
  and in such a case it is better to give up and resume
  execution of other code. ]

This patch adds a new entry to /proc/interrupts, RTR, which
tells user space the number of times we retried the ICR read in
the IPI delivery slow path.

This should give some insight into how well the APIC
message delivery hardware is working - if the counts are way
too large then we are hitting a (very-) slow path way too
often.

Signed-off-by: Fernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
Cc: Jörn Engel <joern@logfs.org>
Cc: Suresh Siddha <suresh.b.siddha@intel.com>
Link: http://lkml.kernel.org/n/tip-vzsp20lo2xdzh5f70g0eis2s@git.kernel.org
[ extended the changelog ]
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2011-12-14 09:32:05 +01:00
..
alpha Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
arm Merge branch 'fixes' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-12-01 11:53:54 -08:00
avr32 Merge git://git.infradead.org/mtd-2.6 2011-11-07 09:11:16 -08:00
blackfin blackfin: Fixup export.h includes 2011-11-14 17:15:23 +08:00
cris net: Fix references to deleted NET_ETHERNET Kconfig setting. 2011-11-09 19:26:53 -05:00
frv
h8300
hexagon
ia64 Merge branch 'upstream/xen-settime' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen 2011-11-06 20:15:05 -08:00
m32r Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2011-11-06 18:54:53 -08:00
m68k m68k/mac: Remove mac_irq_{en,dis}able() wrappers 2011-11-08 22:35:52 +01:00
microblaze microblaze: bury asm/namei.h 2011-11-21 16:48:28 -05:00
mips Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2011-11-15 22:44:45 -02:00
mn10300
openrisc Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2011-11-06 18:54:53 -08:00
parisc
powerpc powerpc/44x: Add mtd ndfc to the ppx44x defconfig 2011-11-25 10:06:00 +11:00
s390 Merge branch 'kvm-updates/3.2' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2011-11-20 14:57:43 -08:00
score
sh Merge branches 'sh/pm-runtime' and 'common/clkfwk' into sh-fixes-for-linus 2011-11-11 16:16:25 +09:00
sparc sparc64: Patch sun4v code sequences properly on module load. 2011-11-17 22:44:58 -08:00
tile Merge branch 'for-linus' of git://github.com/cmetcalf-tilera/linux-tile 2011-11-04 12:33:34 -07:00
um Merge branch 'for-linus' of git://github.com/richardweinberger/linux 2011-11-02 09:45:39 -07:00
unicore32 unicore32, exec: remove redundant set_fs(USER_DS) 2011-11-16 10:50:09 +08:00
x86 x86: Add per-cpu stat counter for APIC ICR read tries 2011-12-14 09:32:05 +01:00
xtensa
.gitignore
Kconfig