[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20180418.232016.1910578116691581991.davem@davemloft.net>
Date: Wed, 18 Apr 2018 23:20:16 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: edumazet@...gle.com
Cc: netdev@...r.kernel.org, eric.dumazet@...il.com
Subject: Re: [PATCH net-next] ipv6: frags: fix a lockdep false positive
From: Eric Dumazet <edumazet@...gle.com>
Date: Tue, 17 Apr 2018 18:11:44 -0700
> lockdep does not know that the locks used by IPv4 defrag
> and IPv6 reassembly units are of different classes.
>
> It complains because of following chains :
>
> 1) sch_direct_xmit() (lock txq->_xmit_lock)
> dev_hard_start_xmit()
> xmit_one()
> dev_queue_xmit_nit()
> packet_rcv_fanout()
> ip_check_defrag()
> ip_defrag()
> spin_lock() (lock frag queue spinlock)
>
> 2) ip6_input_finish()
> ipv6_frag_rcv() (lock frag queue spinlock)
> ip6_frag_queue()
> icmpv6_param_prob() (lock txq->_xmit_lock at some point)
>
> We could add lockdep annotations, but we also can make sure IPv6
> calls icmpv6_param_prob() only after the release of the frag queue spinlock,
> since this naturally makes frag queue spinlock a leaf in lock hierarchy.
>
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
> ---
> Note do David: I chose net-next because of recent changes in net-next,
> and because it is a false positive, but can respin for net tree
> if you prefer. Thanks !
Yeah I think net-next is fine for this.
Applied, thanks.
Powered by blists - more mailing lists