[dpdk-dev] [PATCH] net/af_packet: set default blocksize to pagesize
Ferruh Yigit
ferruh.yigit at intel.com
Thu Jun 27 20:25:39 CEST 2019
On 6/24/2019 3:32 PM, kkanas at marvell.com wrote:
> From: Krzysztof Kanas <kkanas at marvell.com>
>
> 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.
What is the pagesize in arm64?
>
> Signed-off-by: Krzysztof Kanas <kkanas at marvell.com>
> ---
> drivers/net/af_packet/rte_eth_af_packet.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c
> index 4a660d5f013f..ec3d2cbb5202 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,7 @@ rte_eth_from_packet(struct rte_vdev_device *dev,
> if (*sockfd < 0)
> return -1;
>
> + blocksize = getpagesize();
> /*
> * Walk arguments for configurable settings
> */
>
More information about the dev
mailing list