Some pmd driver(e.g: vNIC thunderx PMD) want mbuf_size to be multiple of cache_line_size. With out this fix, Netdev-dpdk initialization would fail for those PMD.
Signed-off-by: Santosh Shukla <[email protected]> Acked-by: Mark Kavanagh <[email protected]> Tested-by: Mark Kavanagh <[email protected]> --- v1 --> v2 - Removed mtu to dmp->mtu change in v2. - Removed extra MTU macro definition (_MBUF_SIZE) in v2. Now MBUF_SIZE looks after the round_up. - For details refer v1 [1]. [1] https://patchwork.ozlabs.org/patch/769113/ v2 --> v3 - Included Ian tag. For more info refer v2 [2] [2] https://patchwork.ozlabs.org/patch/773693/ lib/netdev-dpdk.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 810800ed3..023880ca6 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -76,9 +76,10 @@ static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(5, 20); #define MTU_TO_MAX_FRAME_LEN(mtu) ((mtu) + ETHER_HDR_MAX_LEN) #define FRAME_LEN_TO_MTU(frame_len) ((frame_len) \ - ETHER_HDR_LEN - ETHER_CRC_LEN) -#define MBUF_SIZE(mtu) (MTU_TO_MAX_FRAME_LEN(mtu) \ - + sizeof(struct dp_packet) \ - + RTE_PKTMBUF_HEADROOM) +#define MBUF_SIZE(mtu) ROUND_UP((MTU_TO_MAX_FRAME_LEN(mtu) \ + + sizeof(struct dp_packet) \ + + RTE_PKTMBUF_HEADROOM), \ + RTE_CACHE_LINE_SIZE) #define NETDEV_DPDK_MBUF_ALIGN 1024 #define NETDEV_DPDK_MAX_PKT_LEN 9728 -- 2.13.0 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
