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.