From: Andy Green Date: Thu, 17 May 2018 13:49:42 +0000 (+0800) Subject: mbuf: explicit cast of external buffer length X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=0298bfb26371ac31654444ea8494b30ceccc3b76;p=dpdk.git mbuf: explicit cast of external buffer length GCC 8.1 warned: rte_common.h:141:34: warning: conversion from 'long unsigned int' to 'uint16_t' {aka 'short unsigned int'} may change value [-Wconversion] #define RTE_PTR_DIFF(ptr1, ptr2) ((uintptr_t)(ptr1) - (uintptr_t)(ptr2)) ^ rte_mbuf.h:1360:13: note: in expansion of macro 'RTE_PTR_DIFF' *buf_len = RTE_PTR_DIFF(shinfo, buf_addr); Fixes: a53aa2b9f3be ("mbuf: support attaching external buffer") Signed-off-by: Andy Green Acked-by: Bruce Richardson --- diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h index 0a94e3ece7..ae0fa4d7cd 100644 --- a/lib/librte_mbuf/rte_mbuf.h +++ b/lib/librte_mbuf/rte_mbuf.h @@ -1360,7 +1360,7 @@ rte_pktmbuf_ext_shinfo_init_helper(void *buf_addr, uint16_t *buf_len, shinfo->fcb_opaque = fcb_opaque; rte_mbuf_ext_refcnt_set(shinfo, 1); - *buf_len = RTE_PTR_DIFF(shinfo, buf_addr); + *buf_len = (uint16_t)RTE_PTR_DIFF(shinfo, buf_addr); return shinfo; }