mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Cross-merge networking fixes after downstream PR (net-6.15-rc6). No conflicts. Adjacent changes: net/core/dev.c:08e9f2d584("net: Lock netdevices during dev_shutdown")a82dc19db1("net: avoid potential race between netdev_get_by_index_lock() and netns switch") Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
@@ -9248,18 +9248,7 @@ static int __dev_set_promiscuity(struct net_device *dev, int inc, bool notify)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* dev_set_promiscuity - update promiscuity count on a device
|
||||
* @dev: device
|
||||
* @inc: modifier
|
||||
*
|
||||
* Add or remove promiscuity from a device. While the count in the device
|
||||
* remains above zero the interface remains promiscuous. Once it hits zero
|
||||
* the device reverts back to normal filtering operation. A negative inc
|
||||
* value is used to drop promiscuity on the device.
|
||||
* Return 0 if successful or a negative errno code on error.
|
||||
*/
|
||||
int dev_set_promiscuity(struct net_device *dev, int inc)
|
||||
int netif_set_promiscuity(struct net_device *dev, int inc)
|
||||
{
|
||||
unsigned int old_flags = dev->flags;
|
||||
int err;
|
||||
@@ -9271,7 +9260,6 @@ int dev_set_promiscuity(struct net_device *dev, int inc)
|
||||
dev_set_rx_mode(dev);
|
||||
return err;
|
||||
}
|
||||
EXPORT_SYMBOL(dev_set_promiscuity);
|
||||
|
||||
int netif_set_allmulti(struct net_device *dev, int inc, bool notify)
|
||||
{
|
||||
@@ -12020,9 +12008,9 @@ void unregister_netdevice_many_notify(struct list_head *head,
|
||||
struct sk_buff *skb = NULL;
|
||||
|
||||
/* Shutdown queueing discipline. */
|
||||
netdev_lock_ops(dev);
|
||||
dev_shutdown(dev);
|
||||
dev_tcx_uninstall(dev);
|
||||
netdev_lock_ops(dev);
|
||||
dev_xdp_uninstall(dev);
|
||||
dev_memory_provider_uninstall(dev);
|
||||
netdev_unlock_ops(dev);
|
||||
@@ -12218,7 +12206,9 @@ int __dev_change_net_namespace(struct net_device *dev, struct net *net,
|
||||
synchronize_net();
|
||||
|
||||
/* Shutdown queueing discipline. */
|
||||
netdev_lock_ops(dev);
|
||||
dev_shutdown(dev);
|
||||
netdev_unlock_ops(dev);
|
||||
|
||||
/* Notify protocols, that we are about to destroy
|
||||
* this device. They should clean all the things.
|
||||
|
||||
Reference in New Issue
Block a user