From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Subject: Re: lockdep warns: inconsistent lock state ({IN-SOFTIRQ-W} -> {SOFTIRQ-ON-W}) From: Marcel Holtmann To: Andrei Emeltchenko Cc: linux-bluetooth@vger.kernel.org In-Reply-To: <508e92ca1002260126r600ff956hb18c333504fe6525@mail.gmail.com> References: <508e92ca1002260126r600ff956hb18c333504fe6525@mail.gmail.com> Content-Type: text/plain; charset="UTF-8" Date: Mon, 08 Mar 2010 17:00:16 -0800 Message-ID: <1268096416.3712.34.camel@localhost.localdomain> Mime-Version: 1.0 Sender: linux-bluetooth-owner@vger.kernel.org List-ID: Hi Andrei, > Enabling locking debug we have triggered warning below: > > [ 2917.827178] ================================= > [ 2917.833068] [ INFO: inconsistent lock state ] > [ 2917.837432] 2.6.32 #54 > [ 2917.841125] --------------------------------- > [ 2917.845520] inconsistent {IN-SOFTIRQ-W} -> {SOFTIRQ-ON-W} usage. > [ 2917.851562] krfcommd/1516 [HC0[0]:SC0[0]:HE1:SE1] takes: > [ 2917.856903] (slock-AF_BLUETOOTH){+.?...}, at: [] > rfcomm_sk_state_change+0x78/0x160 [rfcomm] > [ 2917.866363] {IN-SOFTIRQ-W} state was registered at: > [ 2917.871276] [] mark_lock+0x298/0x630 > [ 2917.875946] [] __lock_acquire+0x5f4/0x175c > [ 2917.881134] [] lock_acquire+0x68/0x7c > [ 2917.885864] [] _spin_lock+0x48/0x58 > [ 2917.890441] [] l2cap_conn_start+0x80/0x388 [l2cap] > [ 2917.896362] [] l2cap_recv_frame+0x1c58/0x2fe0 [l2cap] > [ 2917.902526] [] l2cap_recv_acldata+0x100/0x350 [l2cap] > [ 2917.908691] [] hci_rx_task+0x244/0x478 [bluetooth] > [ 2917.914642] [] tasklet_action+0x78/0xd8 > [ 2917.919555] [] __do_softirq+0xa8/0x154 > [ 2917.924407] [] irq_exit+0x60/0xb4 > [ 2917.928802] [] asm_do_IRQ+0x78/0x90 > [ 2917.933380] [] __irq_svc+0x50/0xbc > [ 2917.937866] [] omap3_enter_idle_bm+0x1d0/0x238 > [ 2917.943389] [] cpuidle_idle_call+0xb4/0x114 > [ 2917.948669] [] cpu_idle+0x58/0xac > [ 2917.953063] [] rest_init+0x70/0x84 > [ 2917.957550] [] start_kernel+0x2b4/0x318 > [ 2917.962493] [<80008034>] 0x80008034 > [ 2917.966186] irq event stamp: 312 > [ 2917.969421] hardirqs last enabled at (312): [] > _spin_unlock_irqrestore+0x44/0x70 > [ 2917.977844] hardirqs last disabled at (311): [] > _spin_lock_irqsave+0x24/0x68 > [ 2917.985809] softirqs last enabled at (261): [] > __do_softirq+0x13c/0x154 > [ 2917.993438] softirqs last disabled at (244): [] > do_softirq+0x54/0x78 > [ 2918.000732] > [ 2918.000732] other info that might help us debug this: > [ 2918.007293] 2 locks held by krfcommd/1516: > [ 2918.011413] #0: (rfcomm_mutex){+.+.+.}, at: [] > rfcomm_run+0x1f0/0xb00 [rfcomm] > [ 2918.019805] #1: (&d->lock){+.+...}, at: [] > rfcomm_run+0x61c/0xb00 [rfcomm] > [ 2918.027832] > [ 2918.027832] stack backtrace: > [ 2918.032226] Backtrace: > [ 2918.034729] [] (dump_backtrace+0x0/0x110) from [] > (dump_stack+0x18/0x1c) > [ 2918.043212] r7:dc8f6c00 r6:c0425252 r5:00000001 r4:00000001 > [ 2918.048950] [] (dump_stack+0x0/0x1c) from [] > (print_usage_bug+0x178/0x1bc) > [ 2918.057617] [] (print_usage_bug+0x0/0x1bc) from [] > (mark_lock+0x364/0x630) > [ 2918.066284] [] (mark_lock+0x0/0x630) from [] > (__lock_acquire+0x684/0x175c) > [ 2918.074951] [] (__lock_acquire+0x0/0x175c) from [] > (lock_acquire+0x68/0x7c) > [ 2918.083709] [] (lock_acquire+0x0/0x7c) from [] > (_spin_lock+0x48/0x58) > [ 2918.091949] r7:dba9402c r6:dba5c3c0 r5:dba9402c r4:bf057b50 > [ 2918.097717] [] (_spin_lock+0x0/0x58) from [] > (rfcomm_sk_state_change+0x78/0x160 [rfcomm]) > [ 2918.107696] r5:dba94000 r4:00000000 > [ 2918.111358] [] (rfcomm_sk_state_change+0x0/0x160 [rfcomm]) from > [] (rfcomm_run+0x634/0xb00 [rfcomm]) > [ 2918.122283] r7:dba5c450 r6:dba5d6c0 r5:dba5c3c0 r4:dba5c430 > [ 2918.128051] [] (rfcomm_run+0x0/0xb00 [rfcomm]) from [] > (kthread+0x88/0x90) > [ 2918.136749] [] (kthread+0x0/0x90) from [] > (do_exit+0x0/0x678) > [ 2918.144256] r7:00000000 r6:00000000 r5:00000000 r4:00000000 is this still present with 2.6.34-rc1 kernel? Regards Marcel