/**
* napi_synchronize - wait until NAPI is not running
-@@ -1835,6 +1825,8 @@ enum netdev_priv_flags {
+@@ -1856,6 +1846,8 @@ enum netdev_ml_priv_type {
*
* @wol_enabled: Wake-on-LAN is enabled
*
* @net_notifier_list: List of per-net netdev notifier block
* that follow this device when it is moved
* to another network namespace.
-@@ -2152,6 +2144,7 @@ struct net_device {
+@@ -2175,6 +2167,7 @@ struct net_device {
struct lock_class_key *qdisc_running_key;
bool proto_down;
unsigned wol_enabled:1;
#include <linux/bpf.h>
#include <linux/bpf_trace.h>
#include <net/net_namespace.h>
-@@ -1488,6 +1489,27 @@ void netdev_notify_peers(struct net_devi
+@@ -1500,6 +1501,27 @@ void netdev_notify_peers(struct net_devi
}
EXPORT_SYMBOL(netdev_notify_peers);
static int __dev_open(struct net_device *dev, struct netlink_ext_ack *extack)
{
const struct net_device_ops *ops = dev->netdev_ops;
-@@ -4242,6 +4264,21 @@ int gro_normal_batch __read_mostly = 8;
+@@ -4272,6 +4294,21 @@ int gro_normal_batch __read_mostly = 8;
static inline void ____napi_schedule(struct softnet_data *sd,
struct napi_struct *napi)
{
list_add_tail(&napi->poll_list, &sd->poll_list);
__raise_softirq_irqoff(NET_RX_SOFTIRQ);
}
-@@ -6693,6 +6730,12 @@ void netif_napi_add(struct net_device *d
+@@ -6763,6 +6800,12 @@ void netif_napi_add(struct net_device *d
set_bit(NAPI_STATE_NPSVC, &napi->state);
list_add_rcu(&napi->dev_list, &dev->napi_list);
napi_hash_add(napi);
}
EXPORT_SYMBOL(netif_napi_add);
-@@ -6709,9 +6752,28 @@ void napi_disable(struct napi_struct *n)
+@@ -6779,9 +6822,28 @@ void napi_disable(struct napi_struct *n)
hrtimer_cancel(&n->timer);
clear_bit(NAPI_STATE_DISABLE, &n->state);
static void flush_gro_hash(struct napi_struct *napi)
{
int i;
-@@ -6737,6 +6799,11 @@ void __netif_napi_del(struct napi_struct
+@@ -6807,6 +6869,11 @@ void __netif_napi_del(struct napi_struct
flush_gro_hash(napi);
napi->gro_bitmask = 0;
}
EXPORT_SYMBOL(__netif_napi_del);
-@@ -6818,6 +6885,51 @@ static int napi_poll(struct napi_struct
+@@ -6888,6 +6955,51 @@ static int napi_poll(struct napi_struct
return work;
}