Peter Zijlstra
5e710e37bd
lockdep: change scheduler annotation
...
While thinking about David's graph walk lockdep patch it _finally_
dawned on me that there is no reason we have a lock class per cpu ...
Sorry for being dense :-/
The below changes the annotation from a lock class per cpu, to a single
nested lock, as the scheduler never holds more that 2 rq locks at a time
anyway.
If there was code requiring holding all rq locks this would not work and
the original annotation would be the only option, but that not being the
case, this is a much lighter one.
Compiles and boots on a 2-way x86_64.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: David Miller <davem@davemloft.net>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-08-01 10:46:48 +02:00
..
irq
use WARN() in kernel/irq/chip.c
2008-07-26 12:00:07 -07:00
power
kexec jump: save/restore device state
2008-07-26 12:00:04 -07:00
time
cpumask: change cpumask_of_cpu_ptr to use new cpumask_of_cpu
2008-07-26 16:40:33 +02:00
trace
Merge branch 'linus' into cpus4096
2008-07-28 23:32:00 +02:00
.gitignore
acct.c
bsdacct: fix and add comments around acct_process()
2008-07-25 10:53:47 -07:00
audit.c
[PATCH] remove useless argument type in audit_filter_user()
2008-06-24 23:36:35 -04:00
audit.h
audit_tree.c
auditfilter.c
[PATCH] remove useless argument type in audit_filter_user()
2008-06-24 23:36:35 -04:00
auditsc.c
x86_64 syscall audit fast-path
2008-07-23 17:47:32 -07:00
backtracetest.c
backtrace: replace timer with tasklet + completions
2008-06-27 18:09:16 +02:00
bounds.c
capability.c
security: filesystem capabilities refactor kernel code
2008-07-24 10:47:22 -07:00
cgroup.c
[PATCH] get rid of indirect users of namei.h
2008-07-26 20:53:42 -04:00
cgroup_debug.c
compat.c
configs.c
cpu.c
Merge branch 'linus' into cpus4096
2008-07-28 23:32:00 +02:00
cpuset.c
cpuset: two minor code-cleanups
2008-07-25 10:53:38 -07:00
delayacct.c
per-task-delay-accounting: update taskstats for memory reclaim delay
2008-07-25 10:53:47 -07:00
dma-coherent.c
dma-coherent: add documentation to new interfaces
2008-07-20 21:22:00 +02:00
dma.c
exec_domain.c
[PATCH] kill altroot
2008-07-26 20:53:20 -04:00
exit.c
task IO accounting: improve code readability
2008-07-27 09:58:20 -07:00
extable.c
fork.c
mmu-notifiers: core
2008-07-28 16:30:21 -07:00
futex.c
futexes: fix fault handling in futex_lock_pi
2008-06-23 13:31:15 +02:00
futex_compat.c
hrtimer.c
Merge branch 'generic-ipi' into generic-ipi-for-linus
2008-07-15 21:55:59 +02:00
itimer.c
kallsyms.c
kallsyms: fix potential overflow in binary search
2008-07-25 10:53:27 -07:00
Kconfig.hz
sched: fix hrtick & generic-ipi dependency
2008-07-23 11:18:28 +02:00
Kconfig.preempt
kexec.c
kexec jump: save/restore device state
2008-07-26 12:00:04 -07:00
kfifo.c
kgdb.c
kgdb: sparse fix
2008-06-24 10:52:55 -05:00
kmod.c
call_usermodehelper(): increase reliability
2008-07-25 10:53:28 -07:00
kprobes.c
kprobes: remove redundant config check
2008-07-25 10:53:30 -07:00
ksysfs.c
kthread.c
tracehook: wait_task_inactive
2008-07-26 12:00:09 -07:00
latencytop.c
lockdep.c
lockdep: fix combinatorial explosion in lock subgraph traversal
2008-07-31 18:38:28 +02:00
lockdep_internals.h
lockdep: fix combinatorial explosion in lock subgraph traversal
2008-07-31 18:38:28 +02:00
lockdep_proc.c
lockdep: fix combinatorial explosion in lock subgraph traversal
2008-07-31 18:38:28 +02:00
Makefile
Merge branch 'linus' into core/generic-dma-coherent
2008-07-29 00:07:55 +02:00
marker.c
markers: use rcu_barrier_sched() and call_rcu_sched()
2008-07-25 10:53:45 -07:00
module.c
stop_machine: Wean existing callers off stop_machine_run()
2008-07-28 12:16:31 +10:00
mutex-debug.c
mutex-debug.h
mutex.c
__mutex_lock_common: use signal_pending_state()
2008-06-10 11:45:09 +02:00
mutex.h
notifier.c
ns_cgroup.c
cgroup_clone: use pid of newly created task for new cgroup
2008-07-25 10:53:37 -07:00
nsproxy.c
cgroup_clone: use pid of newly created task for new cgroup
2008-07-25 10:53:37 -07:00
panic.c
Add a WARN() macro; this is WARN_ON() + printk arguments
2008-07-25 10:53:29 -07:00
params.c
pid.c
pidns: remove now unused find_pid function.
2008-07-25 10:53:45 -07:00
pid_namespace.c
bsdacct: switch from global bsd_acct_struct instance to per-pidns one
2008-07-25 10:53:47 -07:00
pm_qos_params.c
pm_qos_params: BKL pushdown
2008-07-02 15:06:24 -06:00
posix-cpu-timers.c
posix-timers: print RT watchdog message
2008-05-24 18:49:22 +02:00
posix-timers.c
posix timers: release_posix_timer: kill the bogus put_task_struct(->it_process);
2008-07-25 10:53:38 -07:00
printk.c
printk ratelimiting rewrite
2008-07-25 10:53:29 -07:00
profile.c
build kernel/profile.o only when requested
2008-07-25 10:53:27 -07:00
ptrace.c
tracehook: wait_task_inactive
2008-07-26 12:00:09 -07:00
rcuclassic.c
stop_machine: Wean existing callers off stop_machine_run()
2008-07-28 12:16:31 +10:00
rcupdate.c
Merge branch 'generic-ipi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
2008-07-15 14:12:03 -07:00
rcupreempt.c
Merge branch 'linus' into cpus4096
2008-07-16 00:29:07 +02:00
rcupreempt_trace.c
rcutorture.c
rcu: make rcutorture even more vicious: invoke RCU readers from irq handlers (timers)
2008-06-26 09:24:33 +02:00
relay.c
relay: add buffer-only channels; useful for early logging
2008-07-26 12:00:04 -07:00
res_counter.c
cgroup files: convert res_counter_write() to be a cgroups write_string() handler
2008-07-25 10:53:36 -07:00
resource.c
rtmutex-debug.c
rtmutex-debug.h
rtmutex-tester.c
sysdev: Pass the attribute to the low level sysdev show/store function
2008-07-21 21:55:02 -07:00
rtmutex.c
rtmutex.h
rtmutex_common.h
rwsem.c
sched.c
lockdep: change scheduler annotation
2008-08-01 10:46:48 +02:00
sched_clock.c
Merge branch 'sched/clock' into sched/devel
2008-07-14 12:19:13 +02:00
sched_cpupri.c
sched: use a 2-d bitmap for searching lowest-pri CPU
2008-06-06 15:19:28 +02:00
sched_cpupri.h
sched: fix the cpuprio count really
2008-06-06 15:19:44 +02:00
sched_debug.c
sched: add full schedstats to /proc/sched_debug
2008-06-27 14:31:31 +02:00
sched_fair.c
Merge branch 'sched/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
2008-07-23 19:36:53 -07:00
sched_features.h
sched: bias effective_load() error towards failing wake_affine().
2008-06-27 14:31:47 +02:00
sched_idletask.c
sched_rt.c
Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
2008-07-24 12:53:51 -07:00
sched_stats.h
sched: fix accounting in task delay accounting & migration
2008-07-04 12:50:23 +02:00
seccomp.c
semaphore.c
mmiotrace broken in linux-next (8-bit writes only)
2008-07-01 10:14:06 +02:00
signal.c
tracehook: force signal_pending()
2008-07-26 12:00:09 -07:00
smp.c
Full conversion to early_initcall() interface, remove old interface
2008-07-26 12:00:04 -07:00
softirq.c
Full conversion to early_initcall() interface, remove old interface
2008-07-26 12:00:04 -07:00
softlockup.c
Full conversion to early_initcall() interface, remove old interface
2008-07-26 12:00:04 -07:00
spinlock.c
ftrace: lockdep notrace annotations
2008-05-23 20:39:40 +02:00
srcu.c
stacktrace.c
stacktrace: fix modular build, export print_stack_trace and save_stack_trace
2008-06-30 09:20:55 +02:00
stop_machine.c
stop_machine(): stop_machine_run() changed to use cpu mask
2008-07-28 12:16:30 +10:00
sys.c
kexec jump
2008-07-26 12:00:04 -07:00
sys_ni.c
signalfd: fix undefined reference to `compat_sys_signalfd4' when !CONFIG_SIGNALFD
2008-07-25 11:35:41 -07:00
sysctl.c
lost sysctl fix
2008-07-27 09:45:34 -07:00
sysctl_check.c
sysctl: check for bogus modes
2008-07-25 10:53:45 -07:00
taskstats.c
taskstats: remove initialization of static per-cpu variable
2008-07-25 10:53:47 -07:00
test_kprobes.c
time.c
timeconst.pl
timer.c
Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
2008-07-14 16:06:58 -07:00
tsacct.c
task IO accounting: move all IO statistics in struct task_io_accounting
2008-07-27 16:12:28 -07:00
uid16.c
user.c
user_namespace.c
utsname.c
utsname_sysctl.c
wait.c
workqueue.c
workqueues: do CPU_UP_CANCELED if CPU_UP_PREPARE fails
2008-07-25 10:53:41 -07:00