DPDK usage discussions
 help / color / mirror / Atom feed
From: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
To: "shesha Sreenivasamurthy (shesha)" <shesha@cisco.com>
Cc: "users@dpdk.org" <users@dpdk.org>
Subject: Re: [dpdk-users] Packets not processed when huge pages are not used
Date: Thu, 22 Oct 2015 15:37:34 +0100	[thread overview]
Message-ID: <5628F4AE.7020409@intel.com> (raw)
In-Reply-To: <D24D4C59.23F0A%shesha@cisco.com>

On 21/10/2015 22:08, shesha Sreenivasamurthy (shesha) wrote:
> Wanted to add ring addresses information:
>
> PMD: ixgbe_dev_rx_queue_setup(): sw_ring=0x7fffa0979440 sw_sc_ring=0x7fffa0975300 hw_ring=0x7fffa097d580 dma_addr=0x7fffa097d580
>
> --
> - Thanks
> char * (*shesha) (uint64_t cache, uint8_t F00D)
> { return 0x0000C0DE; }
>
> From: Cisco Employee <shesha@cisco.com<mailto:shesha@cisco.com>>
> Date: Wednesday, October 21, 2015 at 1:30 PM
> To: "users@dpdk.org<mailto:users@dpdk.org>" <users@dpdk.org<mailto:users@dpdk.org>>
> Subject: Packets not processed when huge pages are not used
>
> 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 ?
Hi Shesha,

It is a known issue:
http://dpdk.org/doc/guides/rel_notes/known_issues.html#pmd-does-not-work-with-no-huge-eal-command-line-parameter

It should work with IOMMU=on and VFIO driver, but I haven't verified 
that myself.

Sergio

  reply	other threads:[~2015-10-22 14:37 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-21 20:29 shesha Sreenivasamurthy (shesha)
2015-10-21 21:08 ` shesha Sreenivasamurthy (shesha)
2015-10-22 14:37   ` Sergio Gonzalez Monroy [this message]
2015-10-22 16:09     ` shesha Sreenivasamurthy (shesha)
2015-10-23  9:24       ` Sergio Gonzalez Monroy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5628F4AE.7020409@intel.com \
    --to=sergio.gonzalez.monroy@intel.com \
    --cc=shesha@cisco.com \
    --cc=users@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).