aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/701-net-0128-net-dpaa-fix-build-failure-due-to-skb_frag_t-struct-.patch
blob: 2a6ccab470398e3402986242d43bed556e60a386 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
From bd9aa7c077105fda307bbc685949d5bb01ed1bd8 Mon Sep 17 00:00:00 2001
From: Dong Aisheng <aisheng.dong@nxp.com>
Date: Sun, 29 Sep 2019 22:38:34 +0800
Subject: [PATCH] net: dpaa: fix build failure due to skb_frag_t struct change
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

We met below build break due to new kernel change:
8842d285bafa ("net: Convert skb_frag_t to bio_vec")

../drivers/net/ethernet/freescale/dpaa/dpaa_eth.c: In function ‘dpaa_errata_a010022_has_dma_issue’:
../drivers/net/ethernet/freescale/dpaa/dpaa_eth.c:2137:37: error: ‘skb_frag_t’ has no member named ‘page_offset’
   if (CROSS_4K_BOUND((uintptr_t)frag->page_offset, frag->bv_len))
                                     ^
../drivers/net/ethernet/freescale/dpaa/dpaa_eth.c:2105:5: note: in definition of macro ‘CROSS_4K_BOUND’
  (((start) + (size)) > (((start) + 0x1000) & ~0xFFF))
     ^
../drivers/net/ethernet/freescale/dpaa/dpaa_eth.c:2137:37: error: ‘skb_frag_t’ has no member named ‘page_offset’
   if (CROSS_4K_BOUND((uintptr_t)frag->page_offset, frag->bv_len))
                                     ^
../drivers/net/ethernet/freescale/dpaa/dpaa_eth.c:2105:27: note: in definition of macro ‘CROSS_4K_BOUND’
  (((start) + (size)) > (((start) + 0x1000) & ~0xFFF))

Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
---
 drivers/net/ethernet/freescale/dpaa/dpaa_eth.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
+++ b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
@@ -2141,7 +2141,7 @@ static bool dpaa_errata_a010022_has_dma_
 		/* Check if a paged fragment crosses a boundary from its
 		 * offset to its end.
 		 */
-		if (CROSS_4K_BOUND((uintptr_t)frag->page_offset, frag->bv_len))
+		if (CROSS_4K_BOUND(skb_frag_off(frag), skb_frag_size(frag)))
 			return true;
 
 		i++;