From: Stephen Hemminger <stephen@networkplumber.org>
To: "dimon.zhao" <dimon.zhao@nebula-matrix.com>
Cc: kyo.liu@nebula-matrix.com, dev@dpdk.org
Subject: Re: [PATCH v2 00/16] NBL PMD for Nebulamatrix NICs
Date: Tue, 17 Jun 2025 06:46:22 -0700 [thread overview]
Message-ID: <20250617064622.2977d4a2@hermes.local> (raw)
In-Reply-To: <20250617032353.3036379-1-dimon.zhao@nebula-matrix.com>
On Mon, 16 Jun 2025 20:23:37 -0700
"dimon.zhao" <dimon.zhao@nebula-matrix.com> wrote:
> Features:
> ---------
> - MTU update
> - promisc mode set
> - xstats
> - Basic stats
>
> Support NICs:
> -------------
> - S1205CQ-A00CHT
> - S1105AS-A00CHT
> - S1055AS-A00CHT
> - S1052AS-A00CHT
> - S1051AS-A00CHT
> - S1045XS-A00CHT
> - S1205CQ-A00CSP
> - S1055AS-A00CSP
> - S1052AS-A00CSP
>
> Dimon Zhao (16):
> net/nbl: add doc and minimum nbl build framework
> net/nbl: add simple probe/remove and log module
> net/nbl: add PHY layer definitions and implementation
> net/nbl: add Channel layer definitions and implementation
> net/nbl: add Resource layer definitions and implementation
> net/nbl: add Dispatch layer definitions and implementation
> net/nbl: add Dev layer definitions and implementation
> net/nbl: add complete device init and uninit functionality
> net/nbl: add UIO and VFIO mode for nbl
> net/nbl: add nbl coexistence mode for nbl
> net/nbl: add nbl ethdev configuration
> net/nbl: add nbl device rxtx queue setup and release ops
> net/nbl: add nbl device start and stop ops
> net/nbl: add nbl device Tx and Rx burst
> net/nbl: add nbl device xstats and stats
> net/nbl: nbl device support set MTU and promisc
>
> .mailmap | 5 +
> MAINTAINERS | 9 +
> doc/guides/nics/features/nbl.ini | 9 +
> doc/guides/nics/index.rst | 1 +
> doc/guides/nics/nbl.rst | 42 +
> drivers/net/meson.build | 1 +
> drivers/net/nbl/meson.build | 26 +
> drivers/net/nbl/nbl_common/nbl_common.c | 47 +
> drivers/net/nbl/nbl_common/nbl_common.h | 10 +
> drivers/net/nbl/nbl_common/nbl_thread.c | 88 ++
> drivers/net/nbl/nbl_common/nbl_userdev.c | 743 ++++++++++
> drivers/net/nbl/nbl_common/nbl_userdev.h | 21 +
> drivers/net/nbl/nbl_core.c | 100 ++
> drivers/net/nbl/nbl_core.h | 98 ++
> drivers/net/nbl/nbl_dev/nbl_dev.c | 1007 ++++++++++++++
> drivers/net/nbl/nbl_dev/nbl_dev.h | 65 +
> drivers/net/nbl/nbl_dispatch.c | 1227 +++++++++++++++++
> drivers/net/nbl/nbl_dispatch.h | 31 +
> drivers/net/nbl/nbl_ethdev.c | 161 +++
> drivers/net/nbl/nbl_ethdev.h | 32 +
> drivers/net/nbl/nbl_hw/nbl_channel.c | 853 ++++++++++++
> drivers/net/nbl/nbl_hw/nbl_channel.h | 127 ++
> .../nbl_hw_leonis/nbl_phy_leonis_snic.c | 230 +++
> .../nbl_hw_leonis/nbl_phy_leonis_snic.h | 53 +
> .../nbl/nbl_hw/nbl_hw_leonis/nbl_res_leonis.c | 253 ++++
> .../nbl/nbl_hw/nbl_hw_leonis/nbl_res_leonis.h | 10 +
> drivers/net/nbl/nbl_hw/nbl_phy.h | 28 +
> drivers/net/nbl/nbl_hw/nbl_resource.c | 5 +
> drivers/net/nbl/nbl_hw/nbl_resource.h | 153 ++
> drivers/net/nbl/nbl_hw/nbl_txrx.c | 907 ++++++++++++
> drivers/net/nbl/nbl_hw/nbl_txrx.h | 136 ++
> drivers/net/nbl/nbl_hw/nbl_txrx_ops.h | 91 ++
> drivers/net/nbl/nbl_include/nbl_def_channel.h | 434 ++++++
> drivers/net/nbl/nbl_include/nbl_def_common.h | 128 ++
> drivers/net/nbl/nbl_include/nbl_def_dev.h | 107 ++
> .../net/nbl/nbl_include/nbl_def_dispatch.h | 95 ++
> drivers/net/nbl/nbl_include/nbl_def_phy.h | 35 +
> .../net/nbl/nbl_include/nbl_def_resource.h | 87 ++
> drivers/net/nbl/nbl_include/nbl_include.h | 203 +++
> drivers/net/nbl/nbl_include/nbl_logs.h | 25 +
> .../net/nbl/nbl_include/nbl_product_base.h | 37 +
> 41 files changed, 7720 insertions(+)
> create mode 100644 doc/guides/nics/features/nbl.ini
> create mode 100644 doc/guides/nics/nbl.rst
> create mode 100644 drivers/net/nbl/meson.build
> create mode 100644 drivers/net/nbl/nbl_common/nbl_common.c
> create mode 100644 drivers/net/nbl/nbl_common/nbl_common.h
> create mode 100644 drivers/net/nbl/nbl_common/nbl_thread.c
> create mode 100644 drivers/net/nbl/nbl_common/nbl_userdev.c
> create mode 100644 drivers/net/nbl/nbl_common/nbl_userdev.h
> create mode 100644 drivers/net/nbl/nbl_core.c
> create mode 100644 drivers/net/nbl/nbl_core.h
> create mode 100644 drivers/net/nbl/nbl_dev/nbl_dev.c
> create mode 100644 drivers/net/nbl/nbl_dev/nbl_dev.h
> create mode 100644 drivers/net/nbl/nbl_dispatch.c
> create mode 100644 drivers/net/nbl/nbl_dispatch.h
> create mode 100644 drivers/net/nbl/nbl_ethdev.c
> create mode 100644 drivers/net/nbl/nbl_ethdev.h
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_channel.c
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_channel.h
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_hw_leonis/nbl_phy_leonis_snic.c
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_hw_leonis/nbl_phy_leonis_snic.h
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_hw_leonis/nbl_res_leonis.c
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_hw_leonis/nbl_res_leonis.h
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_phy.h
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_resource.c
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_resource.h
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_txrx.c
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_txrx.h
> create mode 100644 drivers/net/nbl/nbl_hw/nbl_txrx_ops.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_def_channel.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_def_common.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_def_dev.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_def_dispatch.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_def_phy.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_def_resource.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_include.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_logs.h
> create mode 100644 drivers/net/nbl/nbl_include/nbl_product_base.h
>
Looks like missing RTE_ATOMIC() on nbl_dma_memzone_id.
Please fix and send v3
####################################################################################
#### [Begin job log] "ubuntu-22.04-clang-stdatomic" at step Build and test
####################################################################################
[1210/3613] Compiling C object drivers/libtmp_rte_net_mlx5.a.p/net_mlx5_hws_mlx5dr_crc32.c.o
[1211/3613] Compiling C object drivers/libtmp_rte_net_mlx5.a.p/net_mlx5_hws_mlx5dr_definer.c.o
[1212/3613] Compiling C object drivers/libtmp_rte_net_mlx5.a.p/net_mlx5_hws_mlx5dr_bwc.c.o
[1213/3613] Compiling C object drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_ethdev.c.o
[1214/3613] Compiling C object drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_core.c.o
[1215/3613] Compiling C object drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_common_nbl_common.c.o
FAILED: drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_common_nbl_common.c.o
ccache clang -Idrivers/libtmp_rte_net_nbl.a.p -Idrivers -I../drivers -Idrivers/net/nbl -I../drivers/net/nbl -I../drivers/net/nbl/nbl_include -I../drivers/net/nbl/nbl_hw -I../drivers/net/nbl/nbl_common -Ilib/ethdev -I../lib/ethdev -Ilib/eal/common -I../lib/eal/common -I. -I.. -Iconfig -I../config -Ilib/eal/include -I../lib/eal/include -Ilib/eal/linux/include -I../lib/eal/linux/include -Ilib/eal/x86/include -I../lib/eal/x86/include -I../kernel/linux -Ilib/eal -I../lib/eal -Ilib/kvargs -I../lib/kvargs -Ilib/log -I../lib/log -Ilib/metrics -I../lib/metrics -Ilib/telemetry -I../lib/telemetry -Ilib/net -I../lib/net -Ilib/mbuf -I../lib/mbuf -Ilib/mempool -I../lib/mempool -Ilib/ring -I../lib/ring -Ilib/meter -I../lib/meter -Idrivers/bus/pci -I../drivers/bus/pci -I../drivers/bus/pci/linux -Ilib/pci -I../lib/pci -Idrivers/bus/vdev -I../drivers/bus/vdev -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Werror -std=c11 -O2 -g -include rte_config.h -Wvla -Wcast-qual -Wdeprecated -Wformat -Wformat-nonliteral -Wformat-security -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith -Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings -Wno-missing-field-initializers -D_GNU_SOURCE -fPIC -march=corei7 -mrtm -DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -Wno-address-of-packed-member -DRTE_LOG_DEFAULT_LOGTYPE=pmd.net.nbl -DRTE_ANNOTATE_LOCKS -Wthread-safety -MD -MQ drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_common_nbl_common.c.o -MF drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_common_nbl_common.c.o.d -o drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_common_nbl_common.c.o -c ../drivers/net/nbl/nbl_common/nbl_common.c
../drivers/net/nbl/nbl_common/nbl_common.c:23:3: error: address argument to atomic operation must be a pointer to _Atomic type ('uint64_t *' (aka 'unsigned long *') invalid)
rte_atomic_fetch_add_explicit(&nbl_dma_memzone_id, 1, rte_memory_order_relaxed));
^ ~~~~~~~~~~~~~~~~~~~
../lib/eal/include/rte_stdatomic.h:88:2: note: expanded from macro 'rte_atomic_fetch_add_explicit'
atomic_fetch_add_explicit(ptr, val, memorder)
^ ~~~
/usr/lib/llvm-14/lib/clang/14.0.0/include/stdatomic.h:142:35: note: expanded from macro 'atomic_fetch_add_explicit'
#define atomic_fetch_add_explicit __c11_atomic_fetch_add
^
1 error generated.
[1216/3613] Compiling C object drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_common_nbl_thread.c.o
[1217/3613] Compiling C object drivers/libtmp_rte_net_nbl.a.p/net_nbl_nbl_dispatch.c.o
[1218/3613] Compiling C object drivers/libtmp_rte_net_mlx5.a.p/net_mlx5_mlx5_tx_empw.c.o
[1219/3613] Compiling C object drivers/libtmp_rte_net_mlx5.a.p/net_mlx5_mlx5_tx_txpp.c.o
[1220/3613] Compiling C object drivers/libtmp_rte_net_mlx5.a.p/net_mlx5_mlx5_tx_nompw.c.o
next prev parent reply other threads:[~2025-06-17 13:46 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-17 3:23 dimon.zhao
2025-06-17 3:23 ` [PATCH v2 01/16] net/nbl: add doc and minimum nbl build framework dimon.zhao
2025-06-17 3:23 ` [PATCH v2 02/16] net/nbl: add simple probe/remove and log module dimon.zhao
2025-06-17 3:23 ` [PATCH v2 03/16] net/nbl: add PHY layer definitions and implementation dimon.zhao
2025-06-17 3:23 ` [PATCH v2 04/16] net/nbl: add Channel " dimon.zhao
2025-06-17 3:23 ` [PATCH v2 05/16] net/nbl: add Resource " dimon.zhao
2025-06-17 3:23 ` [PATCH v2 06/16] net/nbl: add Dispatch " dimon.zhao
2025-06-17 3:23 ` [PATCH v2 07/16] net/nbl: add Dev " dimon.zhao
2025-06-17 3:23 ` [PATCH v2 08/16] net/nbl: add complete device init and uninit functionality dimon.zhao
2025-06-17 3:23 ` [PATCH v2 09/16] net/nbl: add UIO and VFIO mode for nbl dimon.zhao
2025-06-17 3:23 ` [PATCH v2 10/16] net/nbl: add nbl coexistence " dimon.zhao
2025-06-17 3:23 ` [PATCH v2 11/16] net/nbl: add nbl ethdev configuration dimon.zhao
2025-06-17 3:23 ` [PATCH v2 12/16] net/nbl: add nbl device rxtx queue setup and release ops dimon.zhao
2025-06-17 3:23 ` [PATCH v2 13/16] net/nbl: add nbl device start and stop ops dimon.zhao
2025-06-17 3:23 ` [PATCH v2 14/16] net/nbl: add nbl device Tx and Rx burst dimon.zhao
2025-06-17 3:23 ` [PATCH v2 15/16] net/nbl: add nbl device xstats and stats dimon.zhao
2025-06-17 3:23 ` [PATCH v2 16/16] net/nbl: nbl device support set MTU and promisc dimon.zhao
2025-06-17 13:46 ` Stephen Hemminger [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-06-17 6:11 [PATCH v2 00/16] NBL PMD for Nebulamatrix NICs dimon.zhao
2025-06-17 3:18 dimon.zhao
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=20250617064622.2977d4a2@hermes.local \
--to=stephen@networkplumber.org \
--cc=dev@dpdk.org \
--cc=dimon.zhao@nebula-matrix.com \
--cc=kyo.liu@nebula-matrix.com \
/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).