From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 307BD46212; Sat, 15 Feb 2025 01:44:06 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B50DE4028A; Sat, 15 Feb 2025 01:44:05 +0100 (CET) Received: from mail-vk1-f172.google.com (mail-vk1-f172.google.com [209.85.221.172]) by mails.dpdk.org (Postfix) with ESMTP id 39F4640281 for ; Sat, 15 Feb 2025 01:44:04 +0100 (CET) Received: by mail-vk1-f172.google.com with SMTP id 71dfb90a1353d-51eb1823a8eso730971e0c.3 for ; Fri, 14 Feb 2025 16:44:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739580243; x=1740185043; darn=dpdk.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=NV8aMFFg1gQdubE3BPQ7ubRR0tc4p1LxgJTV4mBD+4Y=; b=m4q+9FfvFpYj6pPT0NpszCb9EHFcfJJ7zF1CphBOcLBgpbO7i3q3dk/7IJkmFa/PtA 4NqS8HBtVKYLbUs4A9l0mWzgPZXkcEJBHsBdJmVvy+FLqGEbbW9VR1F4d1rD3hAIrYJr rXETyrlbo3tLGPgwIqbteO43gOZjGiALtL4MPEe4dNCm+ZGZaX4AUCGHwlvuOuSuKVuR /yq9vMcNP3+bmSufd+HmYJ48025gvnSkl/Mj7gg/TWYb4dpRmQYq3ZyIiCmn2wpCJJoL LLfo5KW1bcX1vOf+dOaen+uIAJWay98SfCjbSRHWAQ/nkqBxXW4il4X9GKT93LE9siSv TDuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739580243; x=1740185043; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=NV8aMFFg1gQdubE3BPQ7ubRR0tc4p1LxgJTV4mBD+4Y=; b=ijR3WWW+dIGki/lvEITjGhr6EQ/JU8XCyAP1qaBYAtbta7BhyoVWe+fVJLGFjrQssD hW39Uk4qv6k/7xpDP/8WkKRi7WwpxZ1Ihc9Tp9Vvd9vCdaI5eu1ARoq1AcfxD4rnbWBc SFFJf25tW+X6hobe59TTxfcaDETxId38q95AnvnKaPjd4FNznb8hROqBMhYP6elgU31n yaVRNQ5ue50fsECPGefALbIgNEHKTeXWD9+UIOvIghoSHpqSh7GlzVzrpS7zZH/L0aT0 s5LfmAVPL3UMH172/XV7Hpnp1pOpKyJJdKuepCSQubBXzeBuOhbk2meVbdxMT0ipbK/W aaDQ== X-Forwarded-Encrypted: i=1; AJvYcCWSxvcMUUC/JvANYWDPgEbtSIfEa9iX9NayH4Xm/GVhYlBAKhr2lqi7MSqWiwOCzxNtgvQ=@dpdk.org X-Gm-Message-State: AOJu0YyXz8YmqqjG3XAf673WmtdNye9LH6w/I1kz3PQP0L7ZUq6rV8TE BF8GuMZFkDKjLYpySMsjGqyvTm8O/0c0qWduz8U+AnWbJw/R44RIJs9ZmhMurbo7nSb9IbtIw7M KrbrJvWj8HS5lhJyTrr3ugAvzDc8Doytb0ITYjA== X-Gm-Gg: ASbGncvtfP3kFKB0lh/aYha2HH3wOayXqKpLW2utyK1K4A8gLDFGEccOv+bqAcq2JIM 2HNlh4giw8C2P731EFyKYGJub7NET4EhlI+MCWU1dKdyM9b2mJtZosvFJEgEfcr5ex3Ve/SMdng == X-Google-Smtp-Source: AGHT+IHgXBDVtCgZ8Hvl2OqeFO52gt5+83TXekHf+rO0rrQbUhzWZyVJOHZ6z1+HpbN5VxTRhCMYfSm70KVx98qT1Qw= X-Received: by 2002:a05:6122:270c:b0:520:42d3:91d2 with SMTP id 71dfb90a1353d-5209da3cd5fmr728954e0c.1.1739580243238; Fri, 14 Feb 2025 16:44:03 -0800 (PST) MIME-Version: 1.0 References: <1739374368-4949-1-git-send-email-caowenbo@mucse.com> In-Reply-To: <1739374368-4949-1-git-send-email-caowenbo@mucse.com> From: Stephen Hemminger Date: Fri, 14 Feb 2025 16:43:52 -0800 X-Gm-Features: AWEUYZkwVMB_JE2rSxE4wcdbDkiCLtUNGAXFrivl38JHbO5nc9O2qBVBnRQdKsw Message-ID: Subject: Re: [PATCH v12 00/28] [v12]drivers/net Add Support mucse N10 Pmd Driver To: Wenbo Cao Cc: thomas@monjalon.net, dev@dpdk.org, ferruh.yigit@amd.com, andrew.rybchenko@oktetlabs.ru, yaojun@mucse.com Content-Type: multipart/alternative; boundary="000000000000750149062e239631" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org --000000000000750149062e239631 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I ran this driver through the evaluation copy of PVS studio and it reported many warnings you should address. Not all of them are valid, the tool seems to have a lot of false positives. MESSAGES LocationCodeMessage Fails/Info rnp_mac.c (258) V610 Undefined behavior. Check the shift operator '>>'. The right operand ('....' =3D [0x0..0xFFFFFFFFFFFFFFFF]) is greater than or equal to the length in bits of the promoted left operand. rnp_mac.c (81) V1037 Two or more case-branches perform the same actions. Check lines: 81, 84 rnp_mac.c (205) V525 The code contains the collection of similar blocks. Check items 'flt_reg', 'vlan_reg', 'vlan_reg' in lines 205, 206, 207. rnp_mac.c (209) V525 The code contains the collection of similar blocks. Check items 'flt_reg', 'vlan_reg', 'vlan_reg' in lines 209, 210, 211. rnp_mbx.c (398) V547 Expression '!ret_val' is always true. rnp_mbx_fw.c (259) V530 The return value of function 'rte_fls_u32' is required to be utilized. rnp_mbx_fw.c (256) V519 The 'is_sgmii_bits' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 255, 256. rnp_mbx_fw.c (177) V1086 A call of the 'memcpy' function will lead to underflow of the buffer 'cookie->priv'. rnp_mbx_fw.c (332) V1086 A call of the 'memcpy' function will lead to underflow of the buffer 'mac->addrs[nr_lane].mac'. rnp_mbx_fw.c (271) V576 Incorrect format. Consider checking the 15th actual argument of the 'rte_log' function. The SIGNED integer type argument is expected. rnp_mbx_fw.c (389) V1048 The 'phy_meta->link_autoneg' variable was assigned the same value. rnp_osdep.h (126) V576 Incorrect format. Consider checking the fourth actual argument of the 'snprintf' function. The memsize type argument is expected. rnp_osdep.h (32) V677 Custom declaration of a standard 'dma_addr_t' type. The declaration from system header files should be used instead. rnp_ethdev.c (750) V530 The return value of function 'rte_fls_u32' is required to be utilized. rnp_ethdev.c (1386) V519 The 'reg' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1381, 1386. rnp_ethdev.c (1003) V547 Expression 'frame_size < 64' is always false. rnp_ethdev.c (1003) V649 There are two 'if' statements with identical conditional expressions. The first 'if' statement contains function return. This means that the second 'if' statement is senseless. Check lines: 988, 1003. rnp_ethdev.c (583) V684 A value of the variable 'cvlan_ctrl' is not modified. Consider inspecting the expression. It is possible that '1' should be present instead of '0'. rnp_ethdev.c (598) V684 A value of the variable 'svlan_ctrl' is not modified. Consider inspecting the expression. It is possible that '1' should be present instead of '0'. rnp_ethdev.c (618) V684 A value of the variable 'ctrl' is not modified. Consider inspecting the expression. It is possible that '1' should be present instead of '0'. rnp_ethdev.c (106) V1032 The pointer 'msgbuf' is cast to a more strictly aligned pointer type. rnp_ethdev.c (254) V1051 Consider checking for misprints. It's possible that the 'dma_ctrl' should be checked here. rnp_ethdev.c (1348) V525 The code contains the collection of similar blocks. Check items 'mac_stats', 'mac_stats', 'eth_stats' in lines 1348, 1354, 1360. rnp_ethdev.c (1444) V576 Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected. rnp_ethdev.c (1458) V576 Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected. rnp_ethdev.c (110) V641 The size of the 'msgbuf' buffer is not a multiple of the element size of the type 'struct rnp_mbx_fw_cmd_reply'. rnp_ethdev.c (113) V641 The size of the 'msgbuf' buffer is not a multiple of the element size of the type 'struct rnp_mbx_fw_cmd_req'. rnp_ethdev.c (718) V1027 Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class. rnp_ethdev.c (1637) V1027 Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class. rnp_ethdev.c (1766) V1027 Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class. rnp_link.c (192) V519 The 'link.link_autoneg' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 186, 192. rnp_link.c (359) V547 Expression '!port->attr.link_ready' is always true. rnp_link.c (113) V1048 The 'lane' variable was assigned the same value. rnp_rss.c (218) V547 Expression 'rss_hash_level =3D=3D (2UL << 50)' is always false. rnp_rxtx.c (1409) V684 A value of the variable 'txbd->d.cmd' is not modified. Consider inspecting the expression. It is possible that '1' should be present instead of '0'. rnp_rxtx.c (253) V576 Incorrect format. Consider checking the tenth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected. rnp_rxtx.c (461) V576 Incorrect format. Consider checking the tenth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected. rnp_rxtx.c (1224) V1027 Pointer to an object of the 'rte_ether_hdr' class is cast to unrelated 'rte_vlan_hdr' class. On Wed, Feb 12, 2025 at 7:34=E2=80=AFAM Wenbo Cao wrot= e: > For This patchset just to support the basic chip init work > and user can just found the eth_dev, but can't control more. > For Now just support 2*10g nic,the chip can support > 2*10g,4*10g,4*1g,8*1g,8*10g. > The Feature rx side can support rx-cksum-offload,rss,vlan-filter > flow_clow,uncast_filter,mcast_filter,1588,Jumbo-frame > The Feature tx side can support tx-cksum-offload,tso,vxlan-tso > flow director base on ntuple pattern of tcp/udp/ip/ eth_hdr->type > for sriov is also support. > > Because of the chip design defect, for multiple-port mode > one pci-bdf will have multiple-port (max can have four ports) > so this code must be care of one bdf init multiple-port. > v12: > * fixed __rte_packed __deprecated__ compile issue. > > v11: > * fixed array-bounds issue when used rte_memcpy src addr is > * not enough to hold align dst. > * improve efficient_code advised by Stephen > > v10: > * fixed mingw windows meson issue > * rnp not support windows for now. > > v9: > * fixed commit log format check by devtools. > * fixed code compile issue. > > v8: > * fixed codespell issue. > * fixed MAINTAINERS file > > v7: > * add support nic basic feature such as rss vlan strip/filter, > * mtu-change recv/send scater-recv/mutltiple-send. > * fixed code rationality, advised by Ferruh Yigit. > v6: > * fixed the doc(rst) format problem advise by Thomas Monjalon > > v5: > * fixed the symbol name require by the style documentation > > v4: > * one patch has been forgot to upload :( > > v3: > * fixed http://dpdk.org/patch/129830 FreeBSD 13 compile Issue > * change iobar type to void suggest by Stephen Hemminger > * add KMOD_DEP support for vfio-pci > * change run-cmd argument parse check for invalid extra_args > > v2: > * fixed MAINTAIN maillist fullname format > * fixed driver/net/meson the order issue of new driver to driver list > * improve virtual point function usage suggest by Stephen Hemminger > > Wenbo Cao (28): > net/rnp: add skeleton > net/rnp: add ethdev probe and remove > net/rnp: add log > net/rnp: support mailbox basic operate > net/rnp: add device init and uninit > net/rnp: add get device information operation > net/rnp: add support MAC promisc mode > net/rnp: add queue setup and release operations > net/rnp: add queue stop and start operations > net/rnp: add support device start stop operations > net/rnp: add RSS support operations > net/rnp: add support link update operations > net/rnp: add support link setup operations > net/rnp: add Rx burst simple support > net/rnp: add Tx burst simple support > net/rnp: add MTU set operation > net/rnp: add Rx scatter segment version > net/rnp: add Tx multiple segment version > net/rnp: add support basic stats operation > net/rnp: add support xstats operation > net/rnp: add unicast MAC filter operation > net/rnp: add supported packet types > net/rnp: add support Rx checksum offload > net/rnp: add support Tx TSO offload > net/rnp: support VLAN offloads > net/rnp: add support VLAN filters operations > net/rnp: add queue info operation > net/rnp: support Rx/Tx burst mode info > > .mailmap | 1 + > MAINTAINERS | 6 + > doc/guides/nics/features/rnp.ini | 33 + > doc/guides/nics/index.rst | 1 + > doc/guides/nics/rnp.rst | 101 ++ > drivers/net/meson.build | 1 + > drivers/net/rnp/base/meson.build | 17 + > drivers/net/rnp/base/rnp_bdq_if.c | 398 ++++++ > drivers/net/rnp/base/rnp_bdq_if.h | 154 +++ > drivers/net/rnp/base/rnp_bitrev.h | 64 + > drivers/net/rnp/base/rnp_common.c | 103 ++ > drivers/net/rnp/base/rnp_common.h | 17 + > drivers/net/rnp/base/rnp_crc32.c | 37 + > drivers/net/rnp/base/rnp_crc32.h | 10 + > drivers/net/rnp/base/rnp_dma_regs.h | 68 + > drivers/net/rnp/base/rnp_eth_regs.h | 90 ++ > drivers/net/rnp/base/rnp_fw_cmd.c | 162 +++ > drivers/net/rnp/base/rnp_fw_cmd.h | 357 ++++++ > drivers/net/rnp/base/rnp_hw.h | 136 ++ > drivers/net/rnp/base/rnp_mac.c | 366 ++++++ > drivers/net/rnp/base/rnp_mac.h | 34 + > drivers/net/rnp/base/rnp_mac_regs.h | 207 +++ > drivers/net/rnp/base/rnp_mbx.c | 512 ++++++++ > drivers/net/rnp/base/rnp_mbx.h | 58 + > drivers/net/rnp/base/rnp_mbx_fw.c | 499 ++++++++ > drivers/net/rnp/base/rnp_mbx_fw.h | 24 + > drivers/net/rnp/base/rnp_osdep.h | 169 +++ > drivers/net/rnp/meson.build | 27 + > drivers/net/rnp/rnp.h | 258 ++++ > drivers/net/rnp/rnp_ethdev.c | 1841 +++++++++++++++++++++++++++ > drivers/net/rnp/rnp_link.c | 439 +++++++ > drivers/net/rnp/rnp_link.h | 38 + > drivers/net/rnp/rnp_logs.h | 36 + > drivers/net/rnp/rnp_rss.c | 367 ++++++ > drivers/net/rnp/rnp_rss.h | 43 + > drivers/net/rnp/rnp_rxtx.c | 1815 ++++++++++++++++++++++++++ > drivers/net/rnp/rnp_rxtx.h | 162 +++ > 37 files changed, 8651 insertions(+) > create mode 100644 doc/guides/nics/features/rnp.ini > create mode 100644 doc/guides/nics/rnp.rst > create mode 100644 drivers/net/rnp/base/meson.build > create mode 100644 drivers/net/rnp/base/rnp_bdq_if.c > create mode 100644 drivers/net/rnp/base/rnp_bdq_if.h > create mode 100644 drivers/net/rnp/base/rnp_bitrev.h > create mode 100644 drivers/net/rnp/base/rnp_common.c > create mode 100644 drivers/net/rnp/base/rnp_common.h > create mode 100644 drivers/net/rnp/base/rnp_crc32.c > create mode 100644 drivers/net/rnp/base/rnp_crc32.h > create mode 100644 drivers/net/rnp/base/rnp_dma_regs.h > create mode 100644 drivers/net/rnp/base/rnp_eth_regs.h > create mode 100644 drivers/net/rnp/base/rnp_fw_cmd.c > create mode 100644 drivers/net/rnp/base/rnp_fw_cmd.h > create mode 100644 drivers/net/rnp/base/rnp_hw.h > create mode 100644 drivers/net/rnp/base/rnp_mac.c > create mode 100644 drivers/net/rnp/base/rnp_mac.h > create mode 100644 drivers/net/rnp/base/rnp_mac_regs.h > create mode 100644 drivers/net/rnp/base/rnp_mbx.c > create mode 100644 drivers/net/rnp/base/rnp_mbx.h > create mode 100644 drivers/net/rnp/base/rnp_mbx_fw.c > create mode 100644 drivers/net/rnp/base/rnp_mbx_fw.h > create mode 100644 drivers/net/rnp/base/rnp_osdep.h > create mode 100644 drivers/net/rnp/meson.build > create mode 100644 drivers/net/rnp/rnp.h > create mode 100644 drivers/net/rnp/rnp_ethdev.c > create mode 100644 drivers/net/rnp/rnp_link.c > create mode 100644 drivers/net/rnp/rnp_link.h > create mode 100644 drivers/net/rnp/rnp_logs.h > create mode 100644 drivers/net/rnp/rnp_rss.c > create mode 100644 drivers/net/rnp/rnp_rss.h > create mode 100644 drivers/net/rnp/rnp_rxtx.c > create mode 100644 drivers/net/rnp/rnp_rxtx.h > > -- > 2.48.1 > > --000000000000750149062e239631 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I ran this driver through the ev= aluation copy of PVS studio and it reported many warnings you should addres= s.
Not all of them are valid, the tool seems to have a lot of false posi= tives.

V610Undefined behavi= or. Check the shift operator '>>'. The right operand ('..= ..' =3D [0x0..0xFFFFFFFFFFFFFFFF]) is greater than or equal to the leng= th in bits of the promoted left operand.=
rnp_ethdev.c (1003)
rnp_ethdev.c (254)
V576Incorrect format= . Consider checking the fifth actual argument of the 'rte_log' func= tion. The SIGNED integer type argument is expected.<= td style=3D"padding:0px;vertical-align:top;width:112.844px">V1027= =
MESSAGES
LocationCodeMessage
Fails/Info
rnp_mac.c (258)
rnp_mac.c (81)
V1037Two or more case-branches perform the same= actions. Check lines: 81, 84
rnp_mac.c (205)
V525The code contains the collection of similar blocks. Ch= eck items 'flt_reg', 'vlan_reg', 'vlan_reg' in line= s 205, 206, 207.
rnp_= mac.c (209)
V525The code contains the collection of similar blocks. Check items = 9;flt_reg', 'vlan_reg', 'vlan_reg' in lines 209, 210, 2= 11.
rnp_mbx.c (398)
V547= Expre= ssion '!ret_val' is always true.
rnp_mbx_fw.c (259)
V530The return value of function 'rte= _fls_u32' is required to be utilized.
rnp_mbx_fw.c (256)
V519The 'is_sgmii_bits' variable= is assigned values twice successively. Perhaps this is a mistake. Check li= nes: 255, 256.
rnp= _mbx_fw.c (177)
V1086A call of the 'memcpy' function will lead to underflo= w of the buffer 'cookie->priv'.
rnp_mbx_fw.c (332)
V1086A call of the 'memcpy' fu= nction will lead to underflow of the buffer 'mac->addrs[nr_lane].mac= '.
rnp_mbx_fw.= c (271)
V576Incorrect format. Consider checking the 15th actual argument of the = 9;rte_log' function. The SIGNED integer type argument is expected.
rnp_mbx_fw.c (389)
V1048= The &= #39;phy_meta->link_autoneg' variable was assigned the same value.
rnp_osdep.h (126)V576Incorre= ct format. Consider checking the fourth actual argument of the 'snprint= f' function. The memsize type argument is expected.
rnp_osdep.h (32)
V677Custom declaration of a= standard 'dma_addr_t' type. The declaration from system header fil= es should be used instead.
rnp_ethdev.c (750)
V530The return value of function 'rte_fls_u32' is re= quired to be utilized.
= rnp_ethdev.c (1386)
V519The 'reg' variable is assigned values twice success= ively. Perhaps this is a mistake. Check lines: 1381, 1386.
V547Expression 'frame_s= ize < 64' is always false.
rnp_ethdev.c (1003)
V649There are two 'if' statements with ident= ical conditional expressions. The first 'if' statement contains fun= ction return. This means that the second 'if' statement is senseles= s. Check lines: 988, 1003.
rnp_ethdev.c (583)
V684A value of the variable 'cvlan_ctrl' is not modi= fied. Consider inspecting the expression. It is possible that '1' s= hould be present instead of '0'.
rnp_ethdev.c (598)
V684A value of the variable 'svlan_ctrl= 9; is not modified. Consider inspecting the expression. It is possible that= '1' should be present instead of '0'.
rnp_ethdev.c (618)
V684A value of the variable '= ;ctrl' is not modified. Consider inspecting the expression. It is possi= ble that '1' should be present instead of '0'.
rnp_ethdev.c (106)
V1032The pointer 'm= sgbuf' is cast to a more strictly aligned pointer type.
V1051Consider checking for= misprints. It's possible that the 'dma_ctrl' should be checked= here.
rnp_ethdev.c (13= 48)
= V525= The code contains the collection of similar blocks. Check items 'mac_st= ats', 'mac_stats', 'eth_stats' in lines 1348, 1354, 136= 0.
rnp_ethdev.c (1444)<= /div>
V57= 6Inco= rrect format. Consider checking the fifth actual argument of the 'rte_l= og' function. The SIGNED integer type argument is expected.
rnp_ethdev.c (1458)
rnp_ethdev.c (110)
V641The size of the 'msgbuf= 9; buffer is not a multiple of the element size of the type 'struct rnp= _mbx_fw_cmd_reply'.
rnp_ethdev.c (113)
V641The size of the 'msgbuf' buffer is not a multiple o= f the element size of the type 'struct rnp_mbx_fw_cmd_req'.
rnp_ethdev.c (718)
Pointer to an= object of the 'rte_device' class is cast to unrelated 'rte_pci= _device' class.
rnp= _ethdev.c (1637)
V1027Pointer to an object of the 'rte_device' class is ca= st to unrelated 'rte_pci_device' class.
rnp_ethdev.c (1766)
V1027Pointer to an object of the '= ;rte_device' class is cast to unrelated 'rte_pci_device' class.=
=
rnp_link.c (192)
V519= The '= link.link_autoneg' variable is assigned values twice successively. Perh= aps this is a mistake. Check lines: 186, 192.
rnp_link.c (359)
V547Expression '!port->attr.link_ready= ' is always true.
rnp= _link.c (113)
V1048The 'lane' variable was assigned the same value.
rnp_rss.c (218)
V547Expression 'rss_= hash_level =3D=3D (2UL << 50)' is always false.
rnp_rxtx.c (1409)
V684A value of the variable '= ;txbd->d.cmd' is not modified. Consider inspecting the expression. I= t is possible that '1' should be present instead of '0'.
rnp_rxtx.c (253)V576Incorrect form= at. Consider checking the tenth actual argument of the 'rte_log' fu= nction. The SIGNED integer type argument is expected.
rnp_rxtx.c (461)
V576Incorrect format. Consider checki= ng the tenth actual argument of the 'rte_log' function. The SIGNED = integer type argument is expected.
rnp_rxtx.c (1224)
V1027Pointer to an object of the 'rte_ether_hdr= 9; class is cast to unrelated 'rte_vlan_hdr' class.

On Wed, Feb 12, 2025 at 7:34=E2= =80=AFAM Wenbo Cao <caowenbo@mucse= .com> wrote:
For This patchset just to support the basic chip init work
and user can just found the eth_dev, but can't control more.
For Now just support 2*10g nic,the chip can support
2*10g,4*10g,4*1g,8*1g,8*10g.
The Feature rx side can support rx-cksum-offload,rss,vlan-filter
flow_clow,uncast_filter,mcast_filter,1588,Jumbo-frame
The Feature tx side can support tx-cksum-offload,tso,vxlan-tso
flow director base on ntuple pattern of tcp/udp/ip/ eth_hdr->type
for sriov is also support.

Because of the chip design defect, for multiple-port mode
one pci-bdf will have multiple-port (max can have four ports)
so this code must be care of one bdf init multiple-port.
v12:
=C2=A0 * fixed __rte_packed __deprecated__ compile issue.

v11:
=C2=A0 * fixed array-bounds issue when used rte_memcpy src addr is
=C2=A0 * not enough to hold align dst.
=C2=A0 * improve efficient_code advised by Stephen

v10:
=C2=A0 * fixed mingw windows meson issue
=C2=A0 * rnp not support windows for now.

v9:
=C2=A0 * fixed commit log format check by devtools.
=C2=A0 * fixed code compile issue.

v8:
=C2=A0 * fixed codespell issue.
=C2=A0 * fixed MAINTAINERS file

v7:
=C2=A0 * add support nic basic feature such as rss vlan strip/filter,
=C2=A0 * mtu-change recv/send scater-recv/mutltiple-send.
=C2=A0 * fixed code rationality, advised by Ferruh Yigit.
v6:
=C2=A0 * fixed the doc(rst) format problem advise by Thomas Monjalon

v5:
=C2=A0 * fixed the symbol name require by the style documentation

v4:
=C2=A0 * one patch has been forgot to upload :(

v3:
=C2=A0 * fixed http://dpdk.org/patch/129830 FreeBSD 13 compile Issue=
=C2=A0 * change iobar type to void suggest by Stephen Hemminger
=C2=A0 * add KMOD_DEP support for vfio-pci
=C2=A0 * change run-cmd argument parse check for invalid extra_args

v2:
=C2=A0 * fixed MAINTAIN maillist fullname format
=C2=A0 * fixed driver/net/meson the order issue of new driver to driver lis= t
=C2=A0 * improve virtual point function usage suggest by Stephen Hemminger<= br>
Wenbo Cao (28):
=C2=A0 net/rnp: add skeleton
=C2=A0 net/rnp: add ethdev probe and remove
=C2=A0 net/rnp: add log
=C2=A0 net/rnp: support mailbox basic operate
=C2=A0 net/rnp: add device init and uninit
=C2=A0 net/rnp: add get device information operation
=C2=A0 net/rnp: add support MAC promisc mode
=C2=A0 net/rnp: add queue setup and release operations
=C2=A0 net/rnp: add queue stop and start operations
=C2=A0 net/rnp: add support device start stop operations
=C2=A0 net/rnp: add RSS support operations
=C2=A0 net/rnp: add support link update operations
=C2=A0 net/rnp: add support link setup operations
=C2=A0 net/rnp: add Rx burst simple support
=C2=A0 net/rnp: add Tx burst simple support
=C2=A0 net/rnp: add MTU set operation
=C2=A0 net/rnp: add Rx scatter segment version
=C2=A0 net/rnp: add Tx multiple segment version
=C2=A0 net/rnp: add support basic stats operation
=C2=A0 net/rnp: add support xstats operation
=C2=A0 net/rnp: add unicast MAC filter operation
=C2=A0 net/rnp: add supported packet types
=C2=A0 net/rnp: add support Rx checksum offload
=C2=A0 net/rnp: add support Tx TSO offload
=C2=A0 net/rnp: support VLAN offloads
=C2=A0 net/rnp: add support VLAN filters operations
=C2=A0 net/rnp: add queue info operation
=C2=A0 net/rnp: support Rx/Tx burst mode info

=C2=A0.mailmap=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A0 1 +
=C2=A0MAINTAINERS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 =C2=A0 6 +
=C2=A0doc/guides/nics/features/rnp.ini=C2=A0 =C2=A0 |=C2=A0 =C2=A033 +
=C2=A0doc/guides/nics/index.rst=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|= =C2=A0 =C2=A0 1 +
=C2=A0doc/guides/nics/rnp.rst=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 101 ++
=C2=A0drivers/net/meson.build=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 =C2=A0 1 +
=C2=A0drivers/net/rnp/base/meson.build=C2=A0 =C2=A0 |=C2=A0 =C2=A017 +
=C2=A0drivers/net/rnp/base/rnp_bdq_if.c=C2=A0 =C2=A0|=C2=A0 398 ++++++
=C2=A0drivers/net/rnp/base/rnp_bdq_if.h=C2=A0 =C2=A0|=C2=A0 154 +++
=C2=A0drivers/net/rnp/base/rnp_bitrev.h=C2=A0 =C2=A0|=C2=A0 =C2=A064 +
=C2=A0drivers/net/rnp/base/rnp_common.c=C2=A0 =C2=A0|=C2=A0 103 ++
=C2=A0drivers/net/rnp/base/rnp_common.h=C2=A0 =C2=A0|=C2=A0 =C2=A017 +
=C2=A0drivers/net/rnp/base/rnp_crc32.c=C2=A0 =C2=A0 |=C2=A0 =C2=A037 +
=C2=A0drivers/net/rnp/base/rnp_crc32.h=C2=A0 =C2=A0 |=C2=A0 =C2=A010 +
=C2=A0drivers/net/rnp/base/rnp_dma_regs.h |=C2=A0 =C2=A068 +
=C2=A0drivers/net/rnp/base/rnp_eth_regs.h |=C2=A0 =C2=A090 ++
=C2=A0drivers/net/rnp/base/rnp_fw_cmd.c=C2=A0 =C2=A0|=C2=A0 162 +++
=C2=A0drivers/net/rnp/base/rnp_fw_cmd.h=C2=A0 =C2=A0|=C2=A0 357 ++++++
=C2=A0drivers/net/rnp/base/rnp_hw.h=C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 136 += +
=C2=A0drivers/net/rnp/base/rnp_mac.c=C2=A0 =C2=A0 =C2=A0 |=C2=A0 366 ++++++=
=C2=A0drivers/net/rnp/base/rnp_mac.h=C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A034 +=
=C2=A0drivers/net/rnp/base/rnp_mac_regs.h |=C2=A0 207 +++
=C2=A0drivers/net/rnp/base/rnp_mbx.c=C2=A0 =C2=A0 =C2=A0 |=C2=A0 512 ++++++= ++
=C2=A0drivers/net/rnp/base/rnp_mbx.h=C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A058 +=
=C2=A0drivers/net/rnp/base/rnp_mbx_fw.c=C2=A0 =C2=A0|=C2=A0 499 ++++++++ =C2=A0drivers/net/rnp/base/rnp_mbx_fw.h=C2=A0 =C2=A0|=C2=A0 =C2=A024 +
=C2=A0drivers/net/rnp/base/rnp_osdep.h=C2=A0 =C2=A0 |=C2=A0 169 +++
=C2=A0drivers/net/rnp/meson.build=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 = =C2=A027 +
=C2=A0drivers/net/rnp/rnp.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0|=C2=A0 258 ++++
=C2=A0drivers/net/rnp/rnp_ethdev.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 | 1841 ++++++= +++++++++++++++++++++
=C2=A0drivers/net/rnp/rnp_link.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 = 439 +++++++
=C2=A0drivers/net/rnp/rnp_link.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 = =C2=A038 +
=C2=A0drivers/net/rnp/rnp_logs.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 = =C2=A036 +
=C2=A0drivers/net/rnp/rnp_rss.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|= =C2=A0 367 ++++++
=C2=A0drivers/net/rnp/rnp_rss.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|= =C2=A0 =C2=A043 +
=C2=A0drivers/net/rnp/rnp_rxtx.c=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 | 1815 += +++++++++++++++++++++++++
=C2=A0drivers/net/rnp/rnp_rxtx.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 = 162 +++
=C2=A037 files changed, 8651 insertions(+)
=C2=A0create mode 100644 doc/guides/nics/features/rnp.ini
=C2=A0create mode 100644 doc/guides/nics/rnp.rst
=C2=A0create mode 100644 drivers/net/rnp/base/meson.build
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_bdq_if.c
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_bdq_if.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_bitrev.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_common.c
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_common.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_crc32.c
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_crc32.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_dma_regs.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_eth_regs.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_fw_cmd.c
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_fw_cmd.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_hw.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_mac.c
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_mac.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_mac_regs.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_mbx.c
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_mbx.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_mbx_fw.c
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_mbx_fw.h
=C2=A0create mode 100644 drivers/net/rnp/base/rnp_osdep.h
=C2=A0create mode 100644 drivers/net/rnp/meson.build
=C2=A0create mode 100644 drivers/net/rnp/rnp.h
=C2=A0create mode 100644 drivers/net/rnp/rnp_ethdev.c
=C2=A0create mode 100644 drivers/net/rnp/rnp_link.c
=C2=A0create mode 100644 drivers/net/rnp/rnp_link.h
=C2=A0create mode 100644 drivers/net/rnp/rnp_logs.h
=C2=A0create mode 100644 drivers/net/rnp/rnp_rss.c
=C2=A0create mode 100644 drivers/net/rnp/rnp_rss.h
=C2=A0create mode 100644 drivers/net/rnp/rnp_rxtx.c
=C2=A0create mode 100644 drivers/net/rnp/rnp_rxtx.h

--
2.48.1

--000000000000750149062e239631--