Commit fe8300fd authored by Taehee Yoo's avatar Taehee Yoo Committed by David S. Miller
Browse files

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: default avatarTaehee Yoo <ap420073@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 1aad8049
Loading
Loading
Loading
Loading
+16 −10
Original line number Diff line number Diff line
@@ -7762,15 +7762,7 @@ 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,
static void __netdev_upper_dev_unlink(struct net_device *dev,
				      struct net_device *upper_dev)
{
	struct netdev_notifier_changeupper_info changeupper_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,