On Aug 8, 2012, at 4:42 AM, Fubo Chen <fubo.c...@gmail.com> wrote: > Anyone seen this before ? Also occurs with 3.4.1. > > > ====================================================== > [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ] > 3.6.0-rc1-debug+ #1 Not tainted > ------------------------------------------------------ > swapper/1/0 [HC0[0]:SC1[1]:HE0:SE0] is trying to acquire: > (&(&session->lock)->rlock){+.-...}, at: [<ffffffffa025dc08>] > iscsi_eh_cmd_timed_out+0x58/0x2e0 [libiscsi] > > and this task is already holding: > (&(&q->__queue_lock)->rlock){-.-...}, at: [<ffffffff811f6965>] > blk_rq_timed_out_timer+0x25/0x140 > which would create a new lock dependency: > (&(&q->__queue_lock)->rlock){-.-...} -> (&(&session->lock)->rlock){+.-...} > > but this new dependency connects a HARDIRQ-irq-safe lock: > (&(&q->__queue_lock)->rlock){-.-...} > ... which became HARDIRQ-irq-safe at: > [<ffffffff8109b5ca>] __lock_acquire+0x7ea/0x1ba0 > [<ffffffff8109cfc2>] lock_acquire+0x92/0x140 > [<ffffffff814b41c5>] _raw_spin_lock_irqsave+0x65/0xb0 > [<ffffffff812e2974>] blk_done+0x34/0x110 > [<ffffffff81295889>] vring_interrupt+0x49/0xc0 > [<ffffffff810c68f5>] handle_irq_event_percpu+0x75/0x270 > [<ffffffff810c6b38>] handle_irq_event+0x48/0x70 > [<ffffffff810c9477>] handle_edge_irq+0x77/0x110 > [<ffffffff81004042>] handle_irq+0x22/0x40 > [<ffffffff814bda2a>] do_IRQ+0x5a/0xe0 > [<ffffffff814b436f>] ret_from_intr+0x0/0x1a > [<ffffffff8100a7da>] default_idle+0x4a/0x170 > [<ffffffff8100b609>] cpu_idle+0xe9/0x130 > [<ffffffff814a4c6e>] start_secondary+0x26a/0x26c
Does this error only occur when using some sort of virt setup? I do not think we will hit this with iscsi, because we do not ever grab the queue lock for a iscsi device from hard irq context. It is always done from softirq or thread context. The snippet above seems to be from the virtio_blk.c code. -- You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to open-iscsi@googlegroups.com. To unsubscribe from this group, send email to open-iscsi+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/open-iscsi?hl=en.