From: Krzysztof Kanas Date: Mon, 24 Jun 2019 14:32:00 +0000 (+0200) Subject: net/af_packet: set default block size to page size X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=4f538fa249cfdd84f4be412e035f3d4f2e38d0a8;p=dpdk.git net/af_packet: set default block size to page size Kernel validates block size to be aligned to page size. Code works on platforms with page size 4k, but on others e.g. Arm64 fails with default parameters. Signed-off-by: Krzysztof Kanas Reviewed-by: Ferruh Yigit --- diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c index 4a660d5f01..db1a751cef 100644 --- a/drivers/net/af_packet/rte_eth_af_packet.c +++ b/drivers/net/af_packet/rte_eth_af_packet.c @@ -32,7 +32,6 @@ #define ETH_AF_PACKET_FRAMECOUNT_ARG "framecnt" #define ETH_AF_PACKET_QDISC_BYPASS_ARG "qdisc_bypass" -#define DFLT_BLOCK_SIZE (1 << 12) #define DFLT_FRAME_SIZE (1 << 11) #define DFLT_FRAME_COUNT (1 << 9) @@ -811,7 +810,7 @@ rte_eth_from_packet(struct rte_vdev_device *dev, struct rte_kvargs_pair *pair = NULL; unsigned k_idx; unsigned int blockcount; - unsigned int blocksize = DFLT_BLOCK_SIZE; + unsigned int blocksize; unsigned int framesize = DFLT_FRAME_SIZE; unsigned int framecount = DFLT_FRAME_COUNT; unsigned int qpairs = 1; @@ -821,6 +820,8 @@ rte_eth_from_packet(struct rte_vdev_device *dev, if (*sockfd < 0) return -1; + blocksize = getpagesize(); + /* * Walk arguments for configurable settings */