Hi Shijith,

On Sat, Oct 08, 2022 at 01:00:22AM +0530, Shijith Thotton wrote:
> This is a continuation of the discussions[1] to add mbuf physical address 
> field to dynamic field.
> Previous version was to add PA field to dynamic field area based on the EAL 
> IOVA mode option. It was
> deemed unsafe as some components could still use the PA field without 
> checking IOVA mode and there
> are drivers which need PA to work. One suggestion was to make the IOVA mode 
> check at compile time so
> that drivers which need PA can be disabled during build. This series adds 
> this new meson build
> options. Fourth patch adds mbuf PA field to dynamic field on such builds. 
> Last two patches enable
> Marvell cnxk PMDs and software PMDs in IOVA as PA disabled build as they work 
> without PA field.
> 
> 1. 
> https://inbox.dpdk.org/dev/57d2ab7fff672716d37ba4078e2e3bb2db126607.1656605763.git.sthot...@marvell.com/.
> 
> v4:
>  * Restructured changes to multiple patches.
>  * Moved to #if scheme instead of union.
>  * Updated release notes.
> 
> v3:
>  * Cleared use of buf_iova from cnxk PMD.
> 
> v2:
>  * Used RTE_IOVA_AS_VA instread of rte_is_iova_as_va_build().
>  * Moved mbuf next pointer to first cacheline if RTE_IOVA_AS_VA = 1.
> 
> Shijith Thotton (7):
>   mbuf: add API to get and set mbuf physical address
>   test/dma: use API to get mbuf data physical address
>   build: add meson option to configure IOVA mode as PA
>   mbuf: add second dynamic field member
>   lib: move mbuf next pointer to first cache line
>   drivers: mark cnxk PMDs work with IOVA as PA disabled
>   drivers: mark software PMDs work with IOVA as PA disabled
> 
>  app/test-bbdev/test_bbdev_perf.c         |  2 +-
>  app/test-crypto-perf/cperf_test_common.c |  5 +--
>  app/test/test_bpf.c                      |  2 +-
>  app/test/test_dmadev.c                   | 33 ++++++--------
>  app/test/test_mbuf.c                     | 12 +++---
>  app/test/test_pcapng.c                   |  2 +-
>  config/arm/meson.build                   |  8 +++-
>  config/meson.build                       |  1 +
>  doc/guides/platform/cnxk.rst             |  3 +-
>  doc/guides/rel_notes/release_22_11.rst   |  3 ++
>  drivers/common/cnxk/meson.build          |  1 +
>  drivers/crypto/armv8/meson.build         |  1 +
>  drivers/crypto/cnxk/cn10k_ipsec_la_ops.h |  4 +-
>  drivers/crypto/cnxk/cn9k_ipsec_la_ops.h  |  2 +-
>  drivers/crypto/cnxk/meson.build          |  2 +
>  drivers/crypto/ipsec_mb/meson.build      |  1 +
>  drivers/crypto/null/meson.build          |  1 +
>  drivers/crypto/openssl/meson.build       |  1 +
>  drivers/dma/cnxk/meson.build             |  1 +
>  drivers/dma/skeleton/meson.build         |  1 +
>  drivers/event/cnxk/meson.build           |  1 +
>  drivers/event/dsw/meson.build            |  1 +
>  drivers/event/opdl/meson.build           |  1 +
>  drivers/event/skeleton/meson.build       |  1 +
>  drivers/event/sw/meson.build             |  1 +
>  drivers/mempool/bucket/meson.build       |  1 +
>  drivers/mempool/cnxk/meson.build         |  1 +
>  drivers/mempool/ring/meson.build         |  1 +
>  drivers/mempool/stack/meson.build        |  1 +
>  drivers/meson.build                      |  6 +++
>  drivers/net/af_packet/meson.build        |  1 +
>  drivers/net/af_xdp/meson.build           |  2 +
>  drivers/net/bonding/meson.build          |  1 +
>  drivers/net/cnxk/cn10k_ethdev.c          |  4 +-
>  drivers/net/cnxk/cn10k_tx.h              | 55 +++++++-----------------
>  drivers/net/cnxk/cn9k_ethdev.c           |  4 +-
>  drivers/net/cnxk/cn9k_tx.h               | 55 +++++++-----------------
>  drivers/net/cnxk/cnxk_ethdev.h           |  1 -
>  drivers/net/cnxk/meson.build             |  1 +
>  drivers/net/failsafe/meson.build         |  1 +
>  drivers/net/hns3/meson.build             |  6 +++
>  drivers/net/memif/meson.build            |  1 +
>  drivers/net/null/meson.build             |  1 +
>  drivers/net/pcap/meson.build             |  1 +
>  drivers/net/ring/meson.build             |  1 +
>  drivers/net/tap/meson.build              |  1 +
>  drivers/raw/cnxk_bphy/meson.build        |  1 +
>  drivers/raw/cnxk_gpio/meson.build        |  1 +
>  drivers/raw/skeleton/meson.build         |  1 +
>  lib/eal/linux/eal.c                      |  6 +++
>  lib/kni/rte_kni.c                        |  3 +-
>  lib/mbuf/rte_mbuf.c                      | 12 +++---
>  lib/mbuf/rte_mbuf.h                      | 37 +++++++++++++---
>  lib/mbuf/rte_mbuf_core.h                 | 26 +++++++++--
>  lib/mbuf/rte_mbuf_dyn.c                  |  3 ++
>  lib/meson.build                          |  3 ++
>  lib/pipeline/rte_table_action.c          |  2 +-
>  lib/vhost/vhost.h                        |  2 +-
>  lib/vhost/vhost_crypto.c                 | 25 ++++++-----
>  meson_options.txt                        |  2 +
>  60 files changed, 210 insertions(+), 151 deletions(-)
> 
> -- 
> 2.25.1
> 

for the series:
Acked-by: Olivier Matz <olivier.m...@6wind.com>

There are few minor comments but I think it can go in rc1 anyway.

Reply via email to