Ravikiran G Thirumalai
e729aa16b1
Pad irq_desc to internode cacheline size
...
We noticed a drop in n/w performance due to the irq_desc being cacheline
aligned rather than internode aligned. We see 50% of expected performance
when two e1000 nics local to two different nodes have consecutive irq
descriptors allocated, due to false sharing.
Note that this patch does away with cacheline padding for the UP case, as
it does not seem useful for UP configurations.
Signed-off-by: Ravikiran Thirumalai <kiran@scalex86.org>
Signed-off-by: Shai Fultheim <shai@scalex86.org>
Cc: "Siddha, Suresh B" <suresh.b.siddha@intel.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-08 11:15:09 -07:00
..
irq
Pad irq_desc to internode cacheline size
2007-05-08 11:15:09 -07:00
power
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
time
Fix race between cat /proc/*/wchan and rmmod et al
2007-05-08 11:15:08 -07:00
.gitignore
acct.c
[PATCH] kernel: change uses of f_{dentry, vfsmnt} to use f_path
2006-12-08 08:28:42 -08:00
audit.c
[NETLINK]: Switch cb_lock spinlock to mutex and allow to override it
2007-04-25 22:29:03 -07:00
audit.h
auditfilter.c
[PATCH] minor update to rule add/delete messages (ver 2)
2007-02-17 21:30:09 -05:00
auditsc.c
[PATCH] fix deadlock in audit_log_task_context()
2007-03-14 15:27:48 -07:00
capability.c
[PATCH] pid: replace do/while_each_task_pid with do/while_each_pid_task
2007-02-12 09:48:32 -08:00
compat.c
[PATCH] Common compat_sys_sysinfo
2007-02-11 10:51:32 -08:00
configs.c
[PATCH] struct seq_operations and struct file_operations constification
2006-12-07 08:39:46 -08:00
cpu.c
[PATCH] Fix microcode-related suspend problem
2007-04-02 10:06:09 -07:00
cpuset.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
delayacct.c
KMEM_CACHE(): simplify slab cache creation
2007-05-07 12:12:55 -07:00
die_notifier.c
move die notifier handling to common code
2007-05-08 11:15:04 -07:00
dma.c
[PATCH] struct seq_operations and struct file_operations constification
2006-12-07 08:39:46 -08:00
exec_domain.c
exit.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
extable.c
fork.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
futex.c
futex: restartable futex_wait
2007-05-08 11:15:03 -07:00
futex_compat.c
hrtimer.c
[NET]: Fix networking compilation errors
2007-04-27 15:31:24 -07:00
itimer.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
kallsyms.c
Fix race between cat /proc/slab_allocators and rmmod
2007-05-08 11:15:08 -07:00
Kconfig.hz
[PATCH] HZ: 300Hz support
2006-12-07 08:39:36 -08:00
Kconfig.preempt
kexec.c
kdump/kexec: calculate note size at compile time
2007-05-08 11:15:07 -07:00
kfifo.c
[PATCH] Numerous fixes to kernel-doc info in source files.
2007-02-11 10:51:32 -08:00
kmod.c
Fix kevent's childs priority greediness
2007-05-08 11:15:07 -07:00
kprobes.c
Simplify kallsyms_lookup()
2007-05-08 11:15:08 -07:00
ksysfs.c
remove "struct subsystem" as it is no longer needed
2007-05-02 18:57:59 -07:00
kthread.c
[PATCH] Numerous fixes to kernel-doc info in source files.
2007-02-11 10:51:32 -08:00
latency.c
[PATCH] severing module.h->sched.h
2006-12-04 02:00:22 -05:00
lockdep.c
Simplify kallsyms_lookup()
2007-05-08 11:15:08 -07:00
lockdep_internals.h
[PATCH] lockdep: more chains
2006-12-07 08:39:43 -08:00
lockdep_proc.c
[PATCH] remove many unneeded #includes of sched.h
2007-02-14 08:09:54 -08:00
Makefile
move die notifier handling to common code
2007-05-08 11:15:04 -07:00
module.c
Fix race between cat /proc/slab_allocators and rmmod
2007-05-08 11:15:08 -07:00
mutex-debug.c
[PATCH] remove many unneeded #includes of sched.h
2007-02-14 08:09:54 -08:00
mutex-debug.h
mutex.c
[PATCH] lockdep: avoid lockdep warning in md
2006-12-08 08:28:39 -08:00
mutex.h
nsproxy.c
Merge sys_clone()/sys_unshare() nsproxy and namespace handling
2007-05-08 11:15:00 -07:00
panic.c
[PATCH] Add TAINT_USER and ability to set taint flags from userspace
2007-02-11 10:51:29 -08:00
params.c
kernel/params.c: fix lying comment for param_array()
2007-05-08 11:15:08 -07:00
pid.c
Merge sys_clone()/sys_unshare() nsproxy and namespace handling
2007-05-08 11:15:00 -07:00
posix-cpu-timers.c
[PATCH] posix timers: RCU optimization for clock_gettime()
2007-02-16 08:14:00 -08:00
posix-timers.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
printk.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
profile.c
[PATCH] proc: remove useless (and buggy) ->nlink settings
2007-02-11 10:51:32 -08:00
ptrace.c
rcupdate.c
[PATCH] rcu: add a prefetch() in rcu_do_batch()
2006-12-07 08:39:40 -08:00
rcutorture.c
rcutorture: Mark rcu_torture_init as __init
2007-05-08 11:15:00 -07:00
relay.c
[PATCH] kernel-doc fixes for 2.6.20-git15 (non-drivers)
2007-03-01 14:53:37 -08:00
resource.c
libata/IDE: remove combined mode quirk
2007-04-28 14:15:59 -04:00
rtmutex-debug.c
rtmutex-debug.h
rtmutex-tester.c
[PATCH] Add include/linux/freezer.h and move definitions from sched.h
2006-12-07 08:39:27 -08:00
rtmutex.c
[PATCH] hrtimers: namespace and enum cleanup
2007-02-16 08:13:58 -08:00
rtmutex.h
rtmutex_common.h
rwsem.c
Lockdep treats down_write_trylock like regular down_write
2007-05-08 11:15:09 -07:00
sched.c
add touch_all_softlockup_watchdogs()
2007-05-08 11:15:06 -07:00
seccomp.c
signal.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
softirq.c
[PATCH] tick-management: dyntick / highres functionality
2007-02-16 08:13:59 -08:00
softlockup.c
add touch_all_softlockup_watchdogs()
2007-05-08 11:15:06 -07:00
spinlock.c
[PATCH] lockdep: spin_lock_irqsave_nested()
2006-11-25 13:28:34 -08:00
srcu.c
stacktrace.c
stop_machine.c
Use stop_machine_run in the Intel RNG driver
2007-05-08 11:15:00 -07:00
sys.c
remove software_suspend()
2007-05-07 12:12:59 -07:00
sys_ni.c
[PATCH] Create compat_sys_migrate_pages
2006-11-03 12:27:59 -08:00
sysctl.c
proc: maps protection
2007-05-08 11:15:02 -07:00
taskstats.c
KMEM_CACHE(): simplify slab cache creation
2007-05-07 12:12:55 -07:00
time.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
timer.c
Move timekeeping code to timekeeping.c
2007-05-08 11:15:06 -07:00
tsacct.c
[PATCH] time: x86_64: split x86_64/kernel/time.c up
2007-02-16 08:14:00 -08:00
uid16.c
header cleaning: don't include smp_lock.h when not used
2007-05-08 11:15:07 -07:00
user.c
[PATCH] slab: remove kmem_cache_t
2006-12-07 08:39:25 -08:00
utsname.c
Merge sys_clone()/sys_unshare() nsproxy and namespace handling
2007-05-08 11:15:00 -07:00
utsname_sysctl.c
[PATCH] sysctl: remove insert_at_head from register_sysctl
2007-02-14 08:09:59 -08:00
wait.c
workqueue.c
[PATCH] Add debugging feature /proc/timer_stat
2007-02-16 08:13:59 -08:00