Thread (13 messages) flat view 13 messages, 6 authors, 2017-03-22

Re: net: deadlock between ip_expire/sch_direct_xmit

From: Dmitry Vyukov <dvyukov@google.com>
Date: 2017-03-14 14:58:57
Also in: lkml

On Tue, Mar 14, 2017 at 3:56 PM, Eric Dumazet [off-list ref] wrote:
On Tue, Mar 14, 2017 at 7:46 AM, Dmitry Vyukov [off-list ref] wrote:
quoted
I am confused. Lockdep has observed both of these stacks:

       CPU0                    CPU1
       ----                    ----
  lock(&(&q->lock)->rlock);
                               lock(_xmit_ETHER#2);
                               lock(&(&q->lock)->rlock);
  lock(_xmit_ETHER#2);


So it somehow happened. Or what do you mean?
Lockdep said " possible circular locking dependency detected " .
It is not an actual deadlock, but lockdep machinery firing.

For a dead lock to happen, this would require that he ICMP message
sent by ip_expire() is itself fragmented and reassembled.
This cannot be, because ICMP messages are not candidates for
fragmentation, but lockdep can not know that of course...

Ah, I see. Thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help