diff options
author | Taehee Yoo <ap420073@gmail.com> | 2020-09-25 18:13:02 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-09-28 15:00:14 -0700 |
commit | fe8300fd8d655ebc6b6297565665959d6d7bbe02 (patch) | |
tree | aa7e90833af522e8685df7148420812d68b6908d | |
parent | 1aad8049909a6d3379175ef2824a68ac35c0b564 (diff) | |
download | linux-stable-fe8300fd8d655ebc6b6297565665959d6d7bbe02.tar.gz linux-stable-fe8300fd8d655ebc6b6297565665959d6d7bbe02.tar.bz2 linux-stable-fe8300fd8d655ebc6b6297565665959d6d7bbe02.zip |
net: core: add __netdev_upper_dev_unlink()
The netdev_upper_dev_unlink() has to work differently according to flags.
This idea is the same with __netdev_upper_dev_link().
In the following patches, new flags will be added.
Signed-off-by: Taehee Yoo <ap420073@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/core/dev.c | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index 266073e300b5..b7b3d6e15cda 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -7762,16 +7762,8 @@ int netdev_master_upper_dev_link(struct net_device *dev, } EXPORT_SYMBOL(netdev_master_upper_dev_link); -/** - * netdev_upper_dev_unlink - Removes a link to upper device - * @dev: device - * @upper_dev: new upper device - * - * Removes a link to device which is upper to this one. The caller must hold - * the RTNL lock. - */ -void netdev_upper_dev_unlink(struct net_device *dev, - struct net_device *upper_dev) +static void __netdev_upper_dev_unlink(struct net_device *dev, + struct net_device *upper_dev) { struct netdev_notifier_changeupper_info changeupper_info = { .info = { @@ -7800,6 +7792,20 @@ void netdev_upper_dev_unlink(struct net_device *dev, __netdev_walk_all_upper_dev(upper_dev, __netdev_update_lower_level, NULL); } + +/** + * netdev_upper_dev_unlink - Removes a link to upper device + * @dev: device + * @upper_dev: new upper device + * + * Removes a link to device which is upper to this one. The caller must hold + * the RTNL lock. + */ +void netdev_upper_dev_unlink(struct net_device *dev, + struct net_device *upper_dev) +{ + __netdev_upper_dev_unlink(dev, upper_dev); +} EXPORT_SYMBOL(netdev_upper_dev_unlink); static void __netdev_adjacent_dev_set(struct net_device *upper_dev, |