|
@@ -45,6 +45,7 @@
|
|
|
#include <net/ip.h>
|
|
|
#include <net/ipv6.h>
|
|
|
#include <net/tcp.h>
|
|
|
+#include <net/vxlan.h>
|
|
|
#include <net/checksum.h>
|
|
|
#include <net/ip6_checksum.h>
|
|
|
#include <linux/workqueue.h>
|
|
@@ -12550,6 +12551,11 @@ static int bnx2x_get_phys_port_id(struct net_device *netdev,
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
+static bool bnx2x_gso_check(struct sk_buff *skb, struct net_device *dev)
|
|
|
+{
|
|
|
+ return vxlan_gso_check(skb);
|
|
|
+}
|
|
|
+
|
|
|
static const struct net_device_ops bnx2x_netdev_ops = {
|
|
|
.ndo_open = bnx2x_open,
|
|
|
.ndo_stop = bnx2x_close,
|
|
@@ -12581,6 +12587,7 @@ static const struct net_device_ops bnx2x_netdev_ops = {
|
|
|
#endif
|
|
|
.ndo_get_phys_port_id = bnx2x_get_phys_port_id,
|
|
|
.ndo_set_vf_link_state = bnx2x_set_vf_link_state,
|
|
|
+ .ndo_gso_check = bnx2x_gso_check,
|
|
|
};
|
|
|
|
|
|
static int bnx2x_set_coherency_mask(struct bnx2x *bp)
|