mirror of
https://github.com/torvalds/linux.git
synced 2024-11-11 06:31:49 +00:00
[PATCH] lockdep: annotate scheduler runqueue locks
Teach per-CPU runqueue locks and recursive locking code to the lock validator. Has no effect on non-lockdep kernels. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
d730e882a1
commit
fcb993712f
@ -266,6 +266,7 @@ struct runqueue {
|
|||||||
unsigned long ttwu_cnt;
|
unsigned long ttwu_cnt;
|
||||||
unsigned long ttwu_local;
|
unsigned long ttwu_local;
|
||||||
#endif
|
#endif
|
||||||
|
struct lock_class_key rq_lock_key;
|
||||||
};
|
};
|
||||||
|
|
||||||
static DEFINE_PER_CPU(struct runqueue, runqueues);
|
static DEFINE_PER_CPU(struct runqueue, runqueues);
|
||||||
@ -6656,6 +6657,7 @@ void __init sched_init(void)
|
|||||||
|
|
||||||
rq = cpu_rq(i);
|
rq = cpu_rq(i);
|
||||||
spin_lock_init(&rq->lock);
|
spin_lock_init(&rq->lock);
|
||||||
|
lockdep_set_class(&rq->lock, &rq->rq_lock_key);
|
||||||
rq->nr_running = 0;
|
rq->nr_running = 0;
|
||||||
rq->active = rq->arrays;
|
rq->active = rq->arrays;
|
||||||
rq->expired = rq->arrays + 1;
|
rq->expired = rq->arrays + 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user