printk, lockdep: Switch to tracked irq ops
Switch to local_irq_ ops so that the irq state is properly tracked
(raw_local_irq_* isn't tracked by lockdep, causing confusion).
Possible now that commit dd4e5d3ac4
("lockdep: Fix
trace_[soft,hard]irqs_[on,off]() recursion") cured the reason we
needed the raw_ ops.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
47ff5c95db
commit
1a9a8aefa8
|
@ -842,7 +842,7 @@ asmlinkage int vprintk(const char *fmt, va_list args)
|
||||||
printk_delay();
|
printk_delay();
|
||||||
|
|
||||||
/* This stops the holder of console_sem just where we want him */
|
/* This stops the holder of console_sem just where we want him */
|
||||||
raw_local_irq_save(flags);
|
local_irq_save(flags);
|
||||||
this_cpu = smp_processor_id();
|
this_cpu = smp_processor_id();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -962,7 +962,7 @@ asmlinkage int vprintk(const char *fmt, va_list args)
|
||||||
|
|
||||||
lockdep_on();
|
lockdep_on();
|
||||||
out_restore_irqs:
|
out_restore_irqs:
|
||||||
raw_local_irq_restore(flags);
|
local_irq_restore(flags);
|
||||||
|
|
||||||
return printed_len;
|
return printed_len;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue