X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;ds=sidebyside;f=target%2Flinux%2Fgeneric%2Fpatches-4.4%2F680-NET-skip-GRO-for-foreign-MAC-addresses.patch;fp=target%2Flinux%2Fgeneric%2Fpatches-4.4%2F680-NET-skip-GRO-for-foreign-MAC-addresses.patch;h=698d394b8c94dfb906c23462c6b94e316c44f6a1;hb=8e47655d4e979d65c7e488faea4e1fcca8e4cddc;hp=a18689c2e5c4b595ddbdc7d7a60b2203d8c685ee;hpb=c437a671525d4fa01f69e57effee76da09d6761f;p=openwrt%2Fstaging%2Fdedeckeh.git diff --git a/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch index a18689c2e5..698d394b8c 100644 --- a/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch +++ b/target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch @@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau --- a/net/core/dev.c +++ b/net/core/dev.c -@@ -4221,6 +4221,9 @@ static enum gro_result dev_gro_receive(s +@@ -4222,6 +4222,9 @@ static enum gro_result dev_gro_receive(s enum gro_result ret; int grow; @@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau if (!(skb->dev->features & NETIF_F_GRO)) goto normal; -@@ -5373,6 +5376,48 @@ static void __netdev_adjacent_dev_unlink +@@ -5381,6 +5384,48 @@ static void __netdev_adjacent_dev_unlink &upper_dev->adj_list.lower); } @@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau static int __netdev_upper_dev_link(struct net_device *dev, struct net_device *upper_dev, bool master, void *private) -@@ -5444,6 +5489,7 @@ static int __netdev_upper_dev_link(struc +@@ -5452,6 +5497,7 @@ static int __netdev_upper_dev_link(struc goto rollback_lower_mesh; } @@ -84,15 +84,15 @@ Signed-off-by: Felix Fietkau call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, &changeupper_info.info); return 0; -@@ -5570,6 +5616,7 @@ void netdev_upper_dev_unlink(struct net_ +@@ -5578,6 +5624,7 @@ void netdev_upper_dev_unlink(struct net_ list_for_each_entry(i, &upper_dev->all_adj_list.upper, list) - __netdev_adjacent_dev_unlink(dev, i->dev); + __netdev_adjacent_dev_unlink(dev, i->dev, i->ref_nr); + netdev_update_addr_mask(dev); call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, &changeupper_info.info); } -@@ -6110,6 +6157,7 @@ int dev_set_mac_address(struct net_devic +@@ -6118,6 +6165,7 @@ int dev_set_mac_address(struct net_devic if (err) return err; dev->addr_assign_type = NET_ADDR_SET;