From: Stephen Hemminger <stephen@networkplumber.org>
To: Ivan Malov <ivan.malov@arknetworks.am>
Cc: Fabio Fernandes <boicotinho@proton.me>,
"users@dpdk.org" <users@dpdk.org>
Subject: Re: RSS for ENA
Date: Sun, 11 Aug 2024 09:15:30 -0700 [thread overview]
Message-ID: <20240811091530.6eedacd3@hermes.local> (raw)
In-Reply-To: <a474dbc7-5c03-3d14-0608-b42e53924c50@arknetworks.am>
On Sun, 11 Aug 2024 19:55:08 +0400 (+04)
Ivan Malov <ivan.malov@arknetworks.am> wrote:
> Hi Fabio,
>
> Have you considered to select MQ mode 'RSS' [1] via 'dev_conf.rxmode.mq_mode'
> during 'rte_eth_dev_configure' [2] stage? Just to double-check.
>
> Also, the 'RSS_HASH' flag could possibly mean the availability of 32-bit hash
> value in received mbufs rather than support for RSS distribution as a whole.
>
> [1] https://doc.dpdk.org/api-24.07/rte__ethdev_8h.html#a586b8e86131b4ec0ccaf464e847ccf3e
> [2] https://doc.dpdk.org/api-24.07/rte__ethdev_8h.html#a1a7d3a20b102fee222541fda50fd87bd
Please do not top post on mailing lists.
> Hi,
> I'm a bit puzzled why DPDK is reporting RSS to be not available on my ENA port (at AWS) when I'm expecting it to be.
>
> My setup is:
> c7a.4xlarge
> [ENA_COM: ena_com_validate_version]ENA device version: 0.10
> [ENA_COM: ena_com_validate_version]ENA controller version: 0.0.1 implementation version 1
> 16-cores (hyper-threading disabled),
> 4 ENA interfaces/network adapters, but only one (with public IP) is bound to igb_uio
> DPDK 24.07
> 6.5.0-1020-aws,
> Ubuntu 22.04.4 LTS,
>
>
> The device reports that 8 queues are available, but rte_eth_dev_info::rx_offload_capa does not have RTE_ETH_RX_OFFLOAD_RSS_HASH set after calling rte_eth_dev_info_get().
>
> The flag value seems to be coming from here,
> https://github.com/DPDK/dpdk/blob/b3485f4293997d35b6daecc3437bb0c183a51fb3/drivers/net/ena/ena_ethdev.c#L2402
> Where the offload mask is:
> (ena_com_dev_get_features_ctx*) get_feat_ctx->offload
> tx = 3
> rx_supported = 7
> rx_enabled = 0
>
>
> Isn't RSS supposed to be available on this ENA setup?
>
> If not, how am I supposed to distribute inbound packets across those 8 receive queues/CPUs?
>
> Some notes, log:
> at eth_ena_dev_init(), ena_use_large_llq_hdr() returned true
> ena_get_metrics_entries(): 0x6 customer metrics are supported
> ena_use_large_llq_hdr(): Recommended device entry size policy 4
> eth_ena_dev_init(): LLQ entry size 256B
> eth_ena_dev_init(): Placement policy: Low latency
>
Yes, the OFFLOAD_RSS_HASH flag indicates that the received mbuf will contain the hash value.
This driver only does it if multi-queue is enabled (which makes sense).
You need rxmode.mq_mode with RTE_ETH_MQ_RX_RSS_FLAG to make use of all 8 queues.
next prev parent reply other threads:[~2024-08-11 16:15 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-10 22:33 Fabio Fernandes
2024-08-11 15:55 ` Ivan Malov
2024-08-11 16:15 ` Stephen Hemminger [this message]
2024-08-12 19:02 ` Fabio Fernandes
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=20240811091530.6eedacd3@hermes.local \
--to=stephen@networkplumber.org \
--cc=boicotinho@proton.me \
--cc=ivan.malov@arknetworks.am \
--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).