[dpdk-dev] [PATCH 04/10] mbuf: silence -Wcast-align on pointer arithmetic
Cyril Chemparathy
cchemparathy at ezchip.com
Wed Apr 29 18:15:28 CEST 2015
Translating from an mbuf element to the mbuf pointer does not break alignment
constraints. However, the compiler is unaware of this fact and complains on
-Wcast-align. This patch modifies the code to use RTE_PTR_SUB(), thereby
silencing the compiler by casting through (void *).
Signed-off-by: Cyril Chemparathy <cchemparathy at ezchip.com>
---
lib/librte_mbuf/rte_mbuf.h | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h
index 70b0987..5ddd8dd 100644
--- a/lib/librte_mbuf/rte_mbuf.h
+++ b/lib/librte_mbuf/rte_mbuf.h
@@ -337,13 +337,7 @@ static inline uint16_t rte_pktmbuf_priv_size(struct rte_mempool *mp);
static inline struct rte_mbuf *
rte_mbuf_from_indirect(struct rte_mbuf *mi)
{
- struct rte_mbuf *md;
-
- /* mi->buf_addr and mi->priv_size correspond to buffer and
- * private size of the direct mbuf */
- md = (struct rte_mbuf *)((char *)mi->buf_addr - sizeof(*mi) -
- mi->priv_size);
- return md;
+ return RTE_PTR_SUB(mi->buf_addr, sizeof(*mi) + mi->priv_size);
}
/**
--
2.1.2
More information about the dev
mailing list