lockdep: fix ftrace irq tracing false positive
fix this false positive: [ 0.020000] ------------[ cut here ]------------ [ 0.020000] WARNING: at kernel/lockdep.c:2718 check_flags+0x14a/0x170() [ 0.020000] Modules linked in: [ 0.020000] Pid: 0, comm: swapper Not tainted 2.6.26-tip-00343-gd7e5521-dirty #14486 [ 0.020000] [<c01312e4>] warn_on_slowpath+0x54/0x80 [ 0.020000] [<c067e451>] ? _spin_unlock_irqrestore+0x61/0x70 [ 0.020000] [<c0131bb1>] ? release_console_sem+0x201/0x210 [ 0.020000] [<c0143d65>] ? __kernel_text_address+0x35/0x40 [ 0.020000] [<c010562e>] ? dump_trace+0x5e/0x140 [ 0.020000] [<c01518b5>] ? __lock_acquire+0x245/0x820 [ 0.020000] [<c015063a>] check_flags+0x14a/0x170 [ 0.020000] [<c0151ed8>] ? lock_acquire+0x48/0xc0 [ 0.020000] [<c0151ee1>] lock_acquire+0x51/0xc0 [ 0.020000] [<c014a16c>] ? down+0x2c/0x40 [ 0.020000] [<c010a609>] ? sched_clock+0x9/0x10 [ 0.020000] [<c067e7b2>] _write_lock+0x32/0x60 [ 0.020000] [<c013797f>] ? request_resource+0x1f/0xb0 [ 0.020000] [<c013797f>] request_resource+0x1f/0xb0 [ 0.020000] [<c02f89ad>] vgacon_startup+0x2bd/0x3e0 [ 0.020000] [<c094d62a>] con_init+0x19/0x22f [ 0.020000] [<c0330c7c>] ? tty_register_ldisc+0x5c/0x70 [ 0.020000] [<c094cf49>] console_init+0x20/0x2e [ 0.020000] [<c092a969>] start_kernel+0x20c/0x379 [ 0.020000] [<c092a516>] ? unknown_bootoption+0x0/0x1f6 [ 0.020000] [<c092a099>] __init_begin+0x99/0xa1 [ 0.020000] ======================= [ 0.020000] ---[ end trace 4eaa2a86a8e2da22 ]--- [ 0.020000] possible reason: unannotated irqs-on. [ 0.020000] irq event stamp: 0 which occurs if CONFIG_TRACE_IRQFLAGS=y, CONFIG_DEBUG_LOCKDEP=y, but CONFIG_PROVE_LOCKING is disabled. Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
		
							parent
							
								
									b4ba0ba24b
								
							
						
					
					
						commit
						992860e991
					
				| @ -2688,7 +2688,8 @@ __lock_release(struct lockdep_map *lock, int nested, unsigned long ip) | ||||
|  */ | ||||
| static void check_flags(unsigned long flags) | ||||
| { | ||||
| #if defined(CONFIG_DEBUG_LOCKDEP) && defined(CONFIG_TRACE_IRQFLAGS) | ||||
| #if defined(CONFIG_PROVE_LOCKING) && defined(CONFIG_DEBUG_LOCKDEP) && \ | ||||
|     defined(CONFIG_TRACE_IRQFLAGS) | ||||
| 	if (!debug_locks) | ||||
| 		return; | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user