On 6/24/2019 3:32 PM, kka...@marvell.com wrote: > From: Krzysztof Kanas <kka...@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 <kka...@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 > */ >