--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
-@@ -1510,6 +1510,7 @@ enum netdev_priv_flags {
- IFF_NO_RX_HANDLER = 1<<26,
+@@ -1512,6 +1512,7 @@ enum netdev_priv_flags {
IFF_FAILOVER = 1<<27,
IFF_FAILOVER_SLAVE = 1<<28,
-+ IFF_NO_IP_ALIGN = 1<<29,
+ IFF_L3MDEV_RX_HANDLER = 1<<29,
++ IFF_NO_IP_ALIGN = 1<<30,
};
#define IFF_802_1Q_VLAN IFF_802_1Q_VLAN
-@@ -1540,6 +1541,7 @@ enum netdev_priv_flags {
- #define IFF_NO_RX_HANDLER IFF_NO_RX_HANDLER
+@@ -1543,6 +1544,7 @@ enum netdev_priv_flags {
#define IFF_FAILOVER IFF_FAILOVER
#define IFF_FAILOVER_SLAVE IFF_FAILOVER_SLAVE
+ #define IFF_L3MDEV_RX_HANDLER IFF_L3MDEV_RX_HANDLER
+#define IFF_NO_IP_ALIGN IFF_NO_IP_ALIGN
/**
* struct net_device - The DEVICE structure.
-@@ -1838,6 +1840,11 @@ struct net_device {
+@@ -1841,6 +1843,11 @@ struct net_device {
const struct tlsdev_ops *tlsdev_ops;
#endif
const struct header_ops *header_ops;
unsigned int flags;
-@@ -1913,6 +1920,10 @@ struct net_device {
+@@ -1916,6 +1923,10 @@ struct net_device {
struct mpls_dev __rcu *mpls_ptr;
#endif
*/
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
-@@ -2516,6 +2516,10 @@ static inline int pskb_trim(struct sk_bu
+@@ -2527,6 +2527,10 @@ static inline int pskb_trim(struct sk_bu
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
}
/**
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
* @skb: buffer to alter
-@@ -2646,16 +2650,6 @@ static inline struct sk_buff *dev_alloc_
+@@ -2657,16 +2661,6 @@ static inline struct sk_buff *dev_alloc_
}
help
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -3233,10 +3233,20 @@ static int xmit_one(struct sk_buff *skb,
+@@ -3238,10 +3238,20 @@ static int xmit_one(struct sk_buff *skb,
if (!list_empty(&ptype_all) || !list_empty(&dev->ptype_all))
dev_queue_xmit_nit(skb, dev);
#include <net/protocol.h>
#include <net/dst.h>
-@@ -499,6 +500,22 @@ skb_fail:
+@@ -503,6 +504,22 @@ skb_fail:
}
EXPORT_SYMBOL(__napi_alloc_skb);