Hi Jingjing Wu/Beilei Xing. >I guess driver may not handle the attribute enable_iova_as_pa well right now. >Maybe you can have a try by disabling idpf driver by adding "- >Ddisable_drivers=net/idpf". >
Please send a fix. A check can be added similar to hns3 PMD. +if dpdk_conf.get('RTE_IOVA_AS_PA') == 0 + build = false + reason = 'driver does not support disabling IOVA as PA mode' + subdir_done() +endif + Thanks, Shijith >> >> +To: Intel idpf maintainers Jingjing Wu, Beilei Xing >> >> > From: Morten Brørup [mailto:m...@smartsharesystems.com] >> > Sent: Tuesday, 6 December 2022 17.58 >> > >> > Bruce, >> > >> > How do I build with IOVA_AS_VA, to benefit from Shijith Thotton's >> > patch? (Bonus question: How do I make the CI build this way?) >> > >> > When I try this command: >> > meson -Dplatform=generic -Dcheck_includes=true - >> > Denable_iova_as_pa=false work >> > >> > It fails with: >> > drivers/net/idpf/meson.build:36:8: ERROR: Unknown variable >> > "static_rte_common_idpf". >> > >> > Here is the full output: >> > >> > The Meson build system >> > Version: 0.60.3 >> > Source dir: /home/morten/upstreaming/dpdk-experiment >> > Build dir: /home/morten/upstreaming/dpdk-experiment/work >> > Build type: native build >> > Program cat found: YES (/usr/bin/cat) >> > Project name: DPDK >> > Project version: 23.03.0-rc0 >> > C compiler for the host machine: cc (gcc 9.4.0 "cc (Ubuntu 9.4.0- >> > 1ubuntu1~20.04.1) 9.4.0") >> > C linker for the host machine: cc ld.bfd 2.34 >> > Host machine cpu family: x86_64 >> > Host machine cpu: x86_64 >> > Message: ## Building in Developer Mode ## >> > Program pkg-config pkgconf found: NO >> > Program check-symbols.sh found: YES (/home/morten/upstreaming/dpdk- >> > experiment/buildtools/check-symbols.sh) >> > Program options-ibverbs-static.sh found: YES >> > (/home/morten/upstreaming/dpdk-experiment/buildtools/options-ibverbs- >> > static.sh) >> > Program objdump found: YES (/usr/bin/objdump) >> > Program python3 found: YES (/usr/bin/python3) >> > Program cat found: YES (/usr/bin/cat) >> > Program ../buildtools/symlink-drivers-solibs.sh found: YES (/bin/sh >> > /home/morten/upstreaming/dpdk-experiment/config/../buildtools/symlink- >> > drivers-solibs.sh) >> > Checking for size of "void *" : 8 >> > Checking for size of "void *" : 8 >> > Library m found: YES >> > Library numa found: YES >> > Has header "numaif.h" : YES >> > Library libfdt found: NO >> > Library libexecinfo found: NO >> > Did not find pkg-config by name 'pkg-config' >> > Found Pkg-config: NO >> > Run-time dependency libarchive found: NO (tried pkgconfig) >> > Run-time dependency libbsd found: NO (tried pkgconfig) >> > Run-time dependency jansson found: NO (tried pkgconfig) >> > Run-time dependency openssl found: NO (tried pkgconfig) >> > Run-time dependency libpcap found: NO (tried pkgconfig) >> > Library pcap found: YES >> > Has header "pcap.h" with dependency -lpcap: YES >> > Compiler for C supports arguments -Wcast-qual: YES >> > Compiler for C supports arguments -Wdeprecated: YES >> > Compiler for C supports arguments -Wformat: YES >> > Compiler for C supports arguments -Wformat-nonliteral: YES >> > Compiler for C supports arguments -Wformat-security: YES >> > Compiler for C supports arguments -Wmissing-declarations: YES >> > Compiler for C supports arguments -Wmissing-prototypes: YES >> > Compiler for C supports arguments -Wnested-externs: YES >> > Compiler for C supports arguments -Wold-style-definition: YES >> > Compiler for C supports arguments -Wpointer-arith: YES >> > Compiler for C supports arguments -Wsign-compare: YES >> > Compiler for C supports arguments -Wstrict-prototypes: YES >> > Compiler for C supports arguments -Wundef: YES >> > Compiler for C supports arguments -Wwrite-strings: YES >> > Compiler for C supports arguments -Wno-address-of-packed-member: YES >> > Compiler for C supports arguments -Wno-packed-not-aligned: YES >> > Compiler for C supports arguments -Wno-missing-field-initializers: YES >> > Compiler for C supports arguments -mavx512f: YES >> > Checking if "AVX512 checking" : compiles: YES >> > Fetching value of define "__SSE4_2__" : 1 >> > Fetching value of define "__AES__" : >> > Fetching value of define "__AVX__" : >> > Fetching value of define "__AVX2__" : >> > Fetching value of define "__AVX512BW__" : >> > Fetching value of define "__AVX512CD__" : >> > Fetching value of define "__AVX512DQ__" : >> > Fetching value of define "__AVX512F__" : >> > Fetching value of define "__AVX512VL__" : >> > Fetching value of define "__PCLMUL__" : >> > Fetching value of define "__RDRND__" : >> > Fetching value of define "__RDSEED__" : >> > Fetching value of define "__VPCLMULQDQ__" : >> > Compiler for C supports arguments -Wno-format-truncation: YES >> > Message: lib/kvargs: Defining dependency "kvargs" >> > Message: lib/telemetry: Defining dependency "telemetry" >> > Checking for function "getentropy" : YES >> > Message: lib/eal: Defining dependency "eal" >> > Message: lib/ring: Defining dependency "ring" >> > Message: lib/rcu: Defining dependency "rcu" >> > Message: lib/mempool: Defining dependency "mempool" >> > Message: lib/mbuf: Defining dependency "mbuf" >> > Fetching value of define "__PCLMUL__" : (cached) >> > Fetching value of define "__AVX512F__" : (cached) >> > Compiler for C supports arguments -mpclmul: YES >> > Compiler for C supports arguments -maes: YES >> > Compiler for C supports arguments -mavx512f: YES (cached) >> > Compiler for C supports arguments -mavx512bw: YES >> > Compiler for C supports arguments -mavx512dq: YES >> > Compiler for C supports arguments -mavx512vl: YES >> > Compiler for C supports arguments -mvpclmulqdq: YES >> > Compiler for C supports arguments -mavx2: YES >> > Compiler for C supports arguments -mavx: YES >> > Message: lib/net: Defining dependency "net" >> > Message: lib/meter: Defining dependency "meter" >> > Message: lib/ethdev: Defining dependency "ethdev" >> > Message: lib/pci: Defining dependency "pci" >> > Message: lib/cmdline: Defining dependency "cmdline" >> > Message: lib/metrics: Defining dependency "metrics" >> > Message: lib/hash: Defining dependency "hash" >> > Message: lib/timer: Defining dependency "timer" >> > Fetching value of define "__AVX2__" : (cached) >> > Compiler for C supports arguments -mavx2: YES (cached) >> > Fetching value of define "__AVX512F__" : (cached) >> > Fetching value of define "__AVX512VL__" : (cached) >> > Fetching value of define "__AVX512CD__" : (cached) >> > Fetching value of define "__AVX512BW__" : (cached) >> > Compiler for C supports arguments -mavx512f -mavx512vl -mavx512cd - >> > mavx512bw: YES >> > Message: lib/acl: Defining dependency "acl" >> > Message: lib/bbdev: Defining dependency "bbdev" >> > Message: lib/bitratestats: Defining dependency "bitratestats" >> > Run-time dependency libelf found: NO (tried pkgconfig) >> > lib/bpf/meson.build:36: WARNING: libelf is missing, rte_bpf_elf_load >> > API will be disabled >> > Message: lib/bpf: Defining dependency "bpf" >> > Message: lib/cfgfile: Defining dependency "cfgfile" >> > Message: lib/compressdev: Defining dependency "compressdev" >> > Message: lib/cryptodev: Defining dependency "cryptodev" >> > Message: lib/distributor: Defining dependency "distributor" >> > Message: lib/efd: Defining dependency "efd" >> > Message: lib/eventdev: Defining dependency "eventdev" >> > Message: lib/gpudev: Defining dependency "gpudev" >> > Message: lib/gro: Defining dependency "gro" >> > Message: lib/gso: Defining dependency "gso" >> > Message: lib/ip_frag: Defining dependency "ip_frag" >> > Message: lib/jobstats: Defining dependency "jobstats" >> > Message: lib/latencystats: Defining dependency "latencystats" >> > Message: lib/lpm: Defining dependency "lpm" >> > Fetching value of define "__AVX512F__" : (cached) >> > Fetching value of define "__AVX512DQ__" : (cached) >> > Fetching value of define "__AVX512IFMA__" : >> > Compiler for C supports arguments -mavx512f -mavx512dq -mavx512ifma: >> > YES >> > Message: lib/member: Defining dependency "member" >> > Message: lib/pcapng: Defining dependency "pcapng" >> > Compiler for C supports arguments -Wno-cast-qual: YES >> > Message: lib/power: Defining dependency "power" >> > Message: lib/rawdev: Defining dependency "rawdev" >> > Message: lib/regexdev: Defining dependency "regexdev" >> > Message: lib/dmadev: Defining dependency "dmadev" >> > Message: lib/rib: Defining dependency "rib" >> > Message: lib/reorder: Defining dependency "reorder" >> > Message: lib/sched: Defining dependency "sched" >> > Message: lib/security: Defining dependency "security" >> > Message: lib/stack: Defining dependency "stack" >> > Has header "linux/userfaultfd.h" : YES >> > Message: lib/vhost: Defining dependency "vhost" >> > Message: lib/ipsec: Defining dependency "ipsec" >> > Fetching value of define "__AVX512F__" : (cached) >> > Fetching value of define "__AVX512DQ__" : (cached) >> > Compiler for C supports arguments -mavx512f -mavx512dq: YES >> > Compiler for C supports arguments -mavx512bw: YES (cached) >> > Message: lib/fib: Defining dependency "fib" >> > Message: lib/port: Defining dependency "port" >> > Message: lib/pdump: Defining dependency "pdump" >> > Message: lib/table: Defining dependency "table" >> > Message: lib/pipeline: Defining dependency "pipeline" >> > Message: lib/graph: Defining dependency "graph" >> > Message: lib/node: Defining dependency "node" >> > Compiler for C supports arguments -Wno-format-truncation: YES (cached) >> > Compiler for C supports arguments -Wno-cast-qual: YES (cached) >> > Compiler for C supports arguments -Wno-pointer-arith: YES >> > Compiler for C supports arguments -Wno-pointer-to-int-cast: YES >> > Run-time dependency libmusdk found: NO (tried pkgconfig) >> > Compiler for C supports arguments -Wno-cast-qual: YES (cached) >> > Compiler for C supports arguments -Wno-pointer-arith: YES (cached) >> > Message: drivers/bus/pci: Defining dependency "bus_pci" >> > Message: drivers/bus/vdev: Defining dependency "bus_vdev" >> > Message: drivers/common/cnxk: Defining dependency "common_cnxk" >> > Compiler for C supports arguments -std=c11: YES >> > Compiler for C supports arguments -Wno-strict-prototypes: YES >> > Compiler for C supports arguments -D_BSD_SOURCE: YES >> > Compiler for C supports arguments -D_DEFAULT_SOURCE: YES >> > Compiler for C supports arguments -D_XOPEN_SOURCE=600: YES >> > Run-time dependency libmlx5 found: NO (tried pkgconfig) >> > Library mlx5 found: NO >> > Configuring mlx5_autoconf.h using configuration >> > Run-time dependency libcrypto found: NO (tried pkgconfig) >> > Library IPSec_MB found: NO >> > Run-time dependency libcrypto found: NO (tried pkgconfig) >> > Compiler for C supports arguments -Wdisabled-optimization: YES >> > Compiler for C supports arguments -Waggregate-return: YES >> > Compiler for C supports arguments -Wbad-function-cast: YES >> > Compiler for C supports arguments -Wno-sign-compare: YES >> > Compiler for C supports arguments -Wno-unused-parameter: YES >> > Compiler for C supports arguments -Wno-unused-variable: YES >> > Compiler for C supports arguments -Wno-empty-body: YES >> > Compiler for C supports arguments -Wno-unused-but-set-variable: YES >> > Message: drivers/mempool/bucket: Defining dependency "mempool_bucket" >> > Message: drivers/mempool/cnxk: Defining dependency "mempool_cnxk" >> > Message: drivers/mempool/ring: Defining dependency "mempool_ring" >> > Message: drivers/mempool/stack: Defining dependency "mempool_stack" >> > Message: drivers/dma/cnxk: Defining dependency "dma_cnxk" >> > Compiler for C supports arguments -Wno-pointer-arith: YES (cached) >> > Compiler for C supports arguments -Wno-pointer-arith: YES (cached) >> > Message: drivers/dma/skeleton: Defining dependency "dma_skeleton" >> > Message: drivers/net/af_packet: Defining dependency "net_af_packet" >> > Run-time dependency libxdp found: NO (tried pkgconfig) >> > Run-time dependency libbpf found: NO (tried pkgconfig) >> > Library bpf found: NO >> > Has header "linux/if_xdp.h" : YES >> > Run-time dependency zlib found: NO (tried pkgconfig) >> > Compiler for C supports arguments -DSUPPORT_CFA_HW_ALL=1: YES >> > Fetching value of define "__AVX2__" : (cached) >> > Compiler for C supports arguments -mavx2: YES (cached) >> > Message: drivers/net/bonding: Defining dependency "net_bond" >> > Compiler for C supports arguments -flax-vector-conversions: YES >> > Compiler for C supports arguments -Wno-strict-aliasing: YES >> > Message: drivers/net/cnxk: Defining dependency "net_cnxk" >> > Compiler for C supports arguments -Wno-pointer-arith: YES (cached) >> > Compiler for C supports arguments -Wno-uninitialized: YES >> > Compiler for C supports arguments -Wno-unused-parameter: YES (cached) >> > Compiler for C supports arguments -Wno-unused-variable: YES (cached) >> > Compiler for C supports arguments -Wno-misleading-indentation: YES >> > Compiler for C supports arguments -Wno-implicit-fallthrough: YES >> > Fetching value of define "__AVX2__" : (cached) >> > Compiler for C supports arguments -mavx2: YES (cached) >> > Message: drivers/net/failsafe: Defining dependency "net_failsafe" >> > Compiler for C supports arguments -Wno-unused-parameter: YES (cached) >> > Compiler for C supports arguments -Wno-unused-value: YES >> > Compiler for C supports arguments -Wno-strict-aliasing: YES (cached) >> > Compiler for C supports arguments -Wno-format-extra-args: YES >> > Compiler for C supports arguments -Wno-unused-variable: YES (cached) >> > Compiler for C supports arguments -Wno-implicit-fallthrough: YES >> > (cached) >> > Compiler for C supports arguments -Wno-sign-compare: YES (cached) >> > Compiler for C supports arguments -Wno-unused-value: YES (cached) >> > Compiler for C supports arguments -Wno-format: YES >> > Compiler for C supports arguments -Wno-format-security: YES >> > Compiler for C supports arguments -Wno-format-nonliteral: YES >> > Compiler for C supports arguments -Wno-strict-aliasing: YES (cached) >> > Compiler for C supports arguments -Wno-unused-but-set-variable: YES >> > (cached) >> > Compiler for C supports arguments -Wno-unused-parameter: YES (cached) >> > Fetching value of define "__AVX2__" : (cached) >> > Compiler for C supports arguments -mavx2: YES (cached) >> > Fetching value of define "__AVX512F__" : (cached) >> > Compiler for C supports arguments -mavx512f: YES (cached) >> > Compiler for C supports arguments -mavx512bw: YES (cached) >> > Compiler for C supports arguments -march=skylake-avx512: YES >> > Fetching value of define "__AVX2__" : (cached) >> > Compiler for C supports arguments -mavx2: YES (cached) >> > Fetching value of define "__AVX512F__" : (cached) >> > Compiler for C supports arguments -mavx512f: YES (cached) >> > Compiler for C supports arguments -mavx512bw: YES (cached) >> > Compiler for C supports arguments -march=skylake-avx512: YES (cached) >> > Compiler for C supports arguments -Wno-unused-value: YES (cached) >> > Compiler for C supports arguments -Wno-unused-but-set-variable: YES >> > (cached) >> > Compiler for C supports arguments -Wno-unused-variable: YES (cached) >> > Compiler for C supports arguments -Wno-unused-parameter: YES (cached) >> > Fetching value of define "__AVX2__" : (cached) >> > Compiler for C supports arguments -mavx2: YES (cached) >> > Fetching value of define "__AVX512F__" : (cached) >> > Compiler for C supports arguments -mavx512f: YES (cached) >> > Compiler for C supports arguments -mavx512bw: YES (cached) >> > Compiler for C supports arguments -march=skylake-avx512: YES (cached) >> > Fetching value of define "__AVX512F__" : (cached) >> > Compiler for C supports arguments -mavx512f: YES (cached) >> > Compiler for C supports arguments -mavx512bw: YES (cached) >> > Compiler for C supports arguments -march=skylake-avx512: YES (cached) >> > >> > drivers/net/idpf/meson.build:36:8: ERROR: Unknown variable >> > "static_rte_common_idpf". >> > >> > A full log can be found at /home/morten/upstreaming/dpdk- >> > experiment/work/meson-logs/meson-log.txt >> > >> > >> > Med venlig hilsen / Kind regards, >> > -Morten Brørup >> >