[dpdk-dev] [PATCH 1/2] xen: fix compilation on 32 bits

Pablo de Lara pablo.de.lara.guarch at intel.com
Sun Apr 10 21:25:51 CEST 2016


Compilation fails on 32 bits on Xen driver, due to wrong casting:

drivers/net/xenvirt/virtqueue.h: In function ‘virtqueue_enqueue_xmit’:
drivers/net/xenvirt/virtqueue.h:234:24: error: cast from pointer to integer
                            of different size [-Werror=pointer-to-int-cast]
  start_dp[idx].addr  = rte_pktmbuf_mtod(cookie, uint64_t);
                        ^

Fixes: d6b324c00fc9 ("mbuf: get DMA address")

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch at intel.com>
---
 drivers/net/xenvirt/virtqueue.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/xenvirt/virtqueue.h b/drivers/net/xenvirt/virtqueue.h
index e425a04..350eae3 100644
--- a/drivers/net/xenvirt/virtqueue.h
+++ b/drivers/net/xenvirt/virtqueue.h
@@ -231,7 +231,7 @@ virtqueue_enqueue_xmit(struct virtqueue *txvq, struct rte_mbuf *cookie)
 	start_dp[idx].flags = VRING_DESC_F_NEXT;
 	start_dp[idx].addr  = (uintptr_t)NULL;
 	idx = start_dp[idx].next;
-	start_dp[idx].addr  = rte_pktmbuf_mtod(cookie, uint64_t);
+	start_dp[idx].addr  = (uint64_t)rte_pktmbuf_mtod(cookie, uintptr_t);
 	start_dp[idx].len   = cookie->data_len;
 	start_dp[idx].flags = 0;
 	idx = start_dp[idx].next;
-- 
2.5.0



More information about the dev mailing list