lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 17 Sep 2013 06:00:54 +0000
From:	"Grumbach, Emmanuel" <emmanuel.grumbach@...el.com>
To:	Thomas Meyer <thomas@...3r.de>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	ilw <ilw@...ux.intel.com>,
	"linux-rt-users@...r.kernel.org" <linux-rt-users@...r.kernel.org>
Subject: RE: [Ilw] 3.10.10-rt7: inconsistent lock state (iwlwifi)

> 
> lockdep complains about this:
 
> 
> [   92.094870]        CPU0
> [   92.094871]        ----
> [   92.094872]   lock(&trans_pcie->irq_lock);
> [   92.094873]   <Interrupt>
> [   92.094875]     lock(&trans_pcie->irq_lock);
> [   92.094875]
>  *** DEADLOCK ***

Sorry by I am not aware of all the details of RT kernels.
What I see here is that we always disable interrupts when we take trans_pcie->irq_lock so I don't see how this flow is possible - at least not in the world I know. Can you please elaborate on why this is possible in the RT world?

Thanks.

> 
> [   92.094877] 1 lock held by systemd-journal/1002:
> [   92.094882]  #0:  (&mm->mmap_sem){+++++.}, at: [<ffffffff8152d04c>]
> __do_page_fault+0x1cc/0x5a0
> [   92.094883]
> stack backtrace:
> [   92.094885] CPU: 0 PID: 1002 Comm: systemd-journal Not tainted 3.10.10-
> rt7 #5
> [   92.094887] Hardware name: Acer Aspire 1810T/JM11-MS, BIOS v1.3310
> 03/25/2010
> [   92.094890]  ffffffff81fd95f0 ffffffff81a21cf0 ffffffff81525783
> ffffffff81a21d40
> [   92.094893]  ffffffff81522347 0000000000000000 ffff880100000000
> ffffffff00000001
> [   92.094895]  0000000000000002 ffff88013734d050 ffffffff8107d420
> 0000000000000000
> [   92.094896] Call Trace:
> [   92.094902]  <IRQ>  [<ffffffff81525783>] dump_stack+0x19/0x1b
> [   92.094905]  [<ffffffff81522347>] print_usage_bug+0x1fb/0x20c
> [   92.094909]  [<ffffffff8107d420>] ? check_usage_backwards+0x140/0x140
> [   92.094912]  [<ffffffff8107de3a>] mark_lock+0x23a/0x2c0
> [   92.094914]  [<ffffffff8107ec4f>] __lock_acquire+0x7ff/0x1a60
> [   92.094918]  [<ffffffff8152d04c>] ? __do_page_fault+0x1cc/0x5a0
> [   92.094920]  [<ffffffff81080622>] lock_acquire+0x62/0x80
> [   92.094927]  [<ffffffffa015587c>] ? iwl_pcie_isr_ict+0x2c/0x2d0 [iwlwifi]
> [   92.094930]  [<ffffffff81529360>] rt_spin_lock+0x40/0x50
> [   92.094936]  [<ffffffffa015587c>] ? iwl_pcie_isr_ict+0x2c/0x2d0 [iwlwifi]
> [   92.094943]  [<ffffffffa015587c>] iwl_pcie_isr_ict+0x2c/0x2d0 [iwlwifi]
> [   92.094948]  [<ffffffff810a88d5>] handle_irq_event_percpu+0x55/0x180
> [   92.094951]  [<ffffffff810a8a38>] handle_irq_event+0x38/0x60
> [   92.094954]  [<ffffffff810aab7f>] handle_edge_irq+0x6f/0x140
> [   92.094956]  [<ffffffff81003ae9>] handle_irq+0x19/0x30
> [   92.094959]  [<ffffffff810039b5>] do_IRQ+0x45/0xb0
> [   92.094962]  [<ffffffff8152a22d>] common_interrupt+0x6d/0x6d
> [   92.094966]  <EOI>  [<ffffffff8152d04c>] ? __do_page_fault+0x1cc/0x5a0
> [   92.094969]  [<ffffffff810806e0>] ? lock_release_non_nested+0xa0/0x300
> [   92.094973]  [<ffffffff8106196d>] ? get_parent_ip+0xd/0x50
> [   92.094976]  [<ffffffff8152a2c9>] ? retint_swapgs+0xe/0x13
> [   92.094980]  [<ffffffff8123ed3d>] ? trace_hardirqs_off_thunk+0x3a/0x3c
> [   92.094983]  [<ffffffff8152d429>] do_page_fault+0x9/0x10
> [   92.094985]  [<ffffffff8152a502>] page_fault+0x22/0x30
> [   92.288725] iwlwifi 0000:02:00.0: L1 Enabled; Disabling L0S
> [   92.291849] iwlwifi 0000:02:00.0: Radio type=0x1-0x2-0x0
> [   92.422236] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
> 
> 
> _______________________________________________
> ilw mailing list
> ilw@...ux.intel.com
> http://linux.intel.com/mailman/listinfo/ilw

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ