[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200523101408.s7upzn62ihjy3pgy@SvensMacBookAir.sven.lan>
Date: Sat, 23 May 2020 12:14:08 +0200
From: Sven Auhagen <sven.auhagen@...eatech.de>
To: netdev@...r.kernel.org
Cc: thomas.petazzoni@...tlin.com, brouer@...hat.com,
ilias.apalodimas@...aro.org, matteo.croce@...hat.com,
mw@...ihalf.com, jakub.kicinski@...ronome.com
Subject: [PATCH 1/1] MVNETA_SKB_HEADROOM set last 3 bits to zero
For XDP the MVNETA_SKB_HEADROOM is used as an offset for
the received data.
The MVNETA manual states that the last 3 bits assumed to be 0.
This is currently the case but lets make it explicit in the definition
to prevent future problems.
Signed-off-by: Sven Auhagen <sven.auhagen@...eatech.de>
---
drivers/net/ethernet/marvell/mvneta.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/marvell/mvneta.c b/drivers/net/ethernet/marvell/mvneta.c
index 51889770958d..a4a2e0340737 100644
--- a/drivers/net/ethernet/marvell/mvneta.c
+++ b/drivers/net/ethernet/marvell/mvneta.c
@@ -324,7 +324,8 @@
ETH_HLEN + ETH_FCS_LEN, \
cache_line_size())
-#define MVNETA_SKB_HEADROOM max(XDP_PACKET_HEADROOM, NET_SKB_PAD)
+/* Driver assumes that the last 3 bits are 0 */
+#define MVNETA_SKB_HEADROOM (max(XDP_PACKET_HEADROOM, NET_SKB_PAD) & ~0x7)
#define MVNETA_SKB_PAD (SKB_DATA_ALIGN(sizeof(struct skb_shared_info) + \
MVNETA_SKB_HEADROOM))
#define MVNETA_SKB_SIZE(len) (SKB_DATA_ALIGN(len) + MVNETA_SKB_PAD)
--
2.20.1
Powered by blists - more mailing lists