X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fstaging%2Fwigyori.git;a=blobdiff_plain;f=target%2Flinux%2Flayerscape%2Fpatches-5.4%2F701-net-0010-dpaa_eth-ls1043a-errata-check-if-the-skb-is-linear-a.patch;fp=target%2Flinux%2Flayerscape%2Fpatches-5.4%2F701-net-0010-dpaa_eth-ls1043a-errata-check-if-the-skb-is-linear-a.patch;h=e601766bd963add2d372b6c142d1f58e3aa35eb2;hp=0000000000000000000000000000000000000000;hb=cddd4591404fb4c53dc0b3c0b15b942cdbed4356;hpb=d1d2c0b5579ea4f69a42246c9318539d61ba1999 diff --git a/target/linux/layerscape/patches-5.4/701-net-0010-dpaa_eth-ls1043a-errata-check-if-the-skb-is-linear-a.patch b/target/linux/layerscape/patches-5.4/701-net-0010-dpaa_eth-ls1043a-errata-check-if-the-skb-is-linear-a.patch new file mode 100644 index 0000000000..e601766bd9 --- /dev/null +++ b/target/linux/layerscape/patches-5.4/701-net-0010-dpaa_eth-ls1043a-errata-check-if-the-skb-is-linear-a.patch @@ -0,0 +1,31 @@ +From 62fbf7ebdc28867ae613c3be9c62b30bc36edb1d Mon Sep 17 00:00:00 2001 +From: Camelia Groza +Date: Mon, 27 Feb 2017 17:35:24 +0200 +Subject: [PATCH] dpaa_eth: ls1043a errata: check if the skb is linear after 4k + splitting + +Signed-off-by: Camelia Groza +--- + drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_sg.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +--- a/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_sg.c ++++ b/drivers/net/ethernet/freescale/sdk_dpaa/dpaa_eth_sg.c +@@ -993,7 +993,7 @@ int __hot dpa_tx_extended(struct sk_buff + struct dpa_percpu_priv_s *percpu_priv; + struct rtnl_link_stats64 *percpu_stats; + int err = 0; +- const bool nonlinear = skb_is_nonlinear(skb); ++ bool nonlinear; + int *countptr, offset = 0; + + priv = netdev_priv(net_dev); +@@ -1023,6 +1023,8 @@ int __hot dpa_tx_extended(struct sk_buff + } + #endif + ++ nonlinear = skb_is_nonlinear(skb); ++ + /* MAX_SKB_FRAGS is larger than our DPA_SGT_MAX_ENTRIES; make sure + * we don't feed FMan with more fragments than it supports. + * Btw, we're using the first sgt entry to store the linear part of