Introduction of qdisc->running seqcount added lockdep false positives.

While chasing the bug, it came to me that we had a lot of copies of the
same stuff in virtual drivers.

This patch series has the qdisc->running fix (considers that a trylock
is attempted in lockdep terminology), and adds a generic helper so
that we no longer have to patch many virtual drivers when a new per-device
or per-qdisc lock is added.

Thanks to David Ahern for reporting the issue and testing my patches :)


Eric Dumazet (5):
  net: sched: fix qdisc->running lockdep annotations
  net: add netdev_lockdep_set_classes() helper
  net: vrf: call netdev_lockdep_set_classes()
  net: macvlan: call netdev_lockdep_set_classes()
  net: ipvlan: call netdev_lockdep_set_classes()

 drivers/net/bonding/bond_main.c  | 24 +-----------------------
 drivers/net/ipvlan/ipvlan_main.c | 22 +---------------------
 drivers/net/macvlan.c            | 11 +----------
 drivers/net/ppp/ppp_generic.c    |  6 +-----
 drivers/net/team/team.c          | 21 +--------------------
 drivers/net/vrf.c                |  2 +-
 include/linux/netdevice.h        | 17 +++++++++++++++++
 include/net/sch_generic.h        |  6 +++++-
 net/bluetooth/6lowpan.c          | 15 +--------------
 net/ieee802154/6lowpan/core.c    | 16 +---------------
 net/l2tp/l2tp_eth.c              |  6 +-----
 net/sched/sch_generic.c          |  4 ++--
 12 files changed, 33 insertions(+), 117 deletions(-)

-- 
2.8.0.rc3.226.g39d4020

Reply via email to