[dpdk-users] Packets not processed when huge pages are not used

shesha Sreenivasamurthy (shesha) shesha at cisco.com
Wed Oct 21 22:29:47 CEST 2015


Hi,
 I have a packet processing application running correctly using hugepages with 82599 interface. However, when no-huge is set, I do not see any packets being processed by DPDK. When arp packets are sent to this interface, I see them being received by the device (BPRC counter gets incremented). However, the DD register does not get set by the hardware. Therefore, _recv_raw_pkts_vec() returns thinking that there are no packets (shown below). Therefore, when huge pages are not used, I suspect that some DMA configuration is getting messed up. Any tips on how to go about finding the issue will be helpful.

drivers/net/ixgbe/ixgbe_rxtx_vec.c
303     /* Before we start moving massive data around, check to see if
304      * there is actually a packet available */
305     if (!(rxdp->wb.upper.status_error &
306                 rte_cpu_to_le_32(IXGBE_RXDADV_STAT_DD)))
307         return 0;

Observation: In lib/librte_eal/linuxapp/eal/eal_memory.c::rte_eal_hugepage_init() physical memory is set to be same as virtual (mcfg->memseg[0].phys_addr = (phys_addr_t)(uintptr_t)addr;). Is that expected ?


More information about the users mailing list