mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 13:22:23 +00:00
net: get rid of lockdep_set_class_and_subclass()
lockdep_set_class_and_subclass() is meant to reduce
the _nested() annotations by assigning a default subclass.
For addr_list_lock, we have to compute the subclass at
run-time as the netdevice topology changes after creation.
So, we should just get rid of these
lockdep_set_class_and_subclass() and stick with our _nested()
annotations.
Fixes: 845e0ebb44
("net: change addr_list_lock back to static key")
Suggested-by: Taehee Yoo <ap420073@gmail.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7dea927f70
commit
be74294ffa
@ -4052,9 +4052,8 @@ static int macsec_newlink(struct net *net, struct net_device *dev,
|
|||||||
return err;
|
return err;
|
||||||
|
|
||||||
netdev_lockdep_set_classes(dev);
|
netdev_lockdep_set_classes(dev);
|
||||||
lockdep_set_class_and_subclass(&dev->addr_list_lock,
|
lockdep_set_class(&dev->addr_list_lock,
|
||||||
&macsec_netdev_addr_lock_key,
|
&macsec_netdev_addr_lock_key);
|
||||||
dev->lower_level);
|
|
||||||
|
|
||||||
err = netdev_upper_dev_link(real_dev, dev, extack);
|
err = netdev_upper_dev_link(real_dev, dev, extack);
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
|
@ -880,9 +880,8 @@ static struct lock_class_key macvlan_netdev_addr_lock_key;
|
|||||||
static void macvlan_set_lockdep_class(struct net_device *dev)
|
static void macvlan_set_lockdep_class(struct net_device *dev)
|
||||||
{
|
{
|
||||||
netdev_lockdep_set_classes(dev);
|
netdev_lockdep_set_classes(dev);
|
||||||
lockdep_set_class_and_subclass(&dev->addr_list_lock,
|
lockdep_set_class(&dev->addr_list_lock,
|
||||||
&macvlan_netdev_addr_lock_key,
|
&macvlan_netdev_addr_lock_key);
|
||||||
dev->lower_level);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int macvlan_init(struct net_device *dev)
|
static int macvlan_init(struct net_device *dev)
|
||||||
|
@ -503,11 +503,10 @@ static void vlan_dev_set_lockdep_one(struct net_device *dev,
|
|||||||
lockdep_set_class(&txq->_xmit_lock, &vlan_netdev_xmit_lock_key);
|
lockdep_set_class(&txq->_xmit_lock, &vlan_netdev_xmit_lock_key);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void vlan_dev_set_lockdep_class(struct net_device *dev, int subclass)
|
static void vlan_dev_set_lockdep_class(struct net_device *dev)
|
||||||
{
|
{
|
||||||
lockdep_set_class_and_subclass(&dev->addr_list_lock,
|
lockdep_set_class(&dev->addr_list_lock,
|
||||||
&vlan_netdev_addr_lock_key,
|
&vlan_netdev_addr_lock_key);
|
||||||
subclass);
|
|
||||||
netdev_for_each_tx_queue(dev, vlan_dev_set_lockdep_one, NULL);
|
netdev_for_each_tx_queue(dev, vlan_dev_set_lockdep_one, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -601,7 +600,7 @@ static int vlan_dev_init(struct net_device *dev)
|
|||||||
|
|
||||||
SET_NETDEV_DEVTYPE(dev, &vlan_type);
|
SET_NETDEV_DEVTYPE(dev, &vlan_type);
|
||||||
|
|
||||||
vlan_dev_set_lockdep_class(dev, dev->lower_level);
|
vlan_dev_set_lockdep_class(dev);
|
||||||
|
|
||||||
vlan->vlan_pcpu_stats = netdev_alloc_pcpu_stats(struct vlan_pcpu_stats);
|
vlan->vlan_pcpu_stats = netdev_alloc_pcpu_stats(struct vlan_pcpu_stats);
|
||||||
if (!vlan->vlan_pcpu_stats)
|
if (!vlan->vlan_pcpu_stats)
|
||||||
|
Loading…
Reference in New Issue
Block a user