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