From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 57D68A0613 for ; Thu, 26 Sep 2019 16:03:16 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0FF101BE51; Thu, 26 Sep 2019 16:03:15 +0200 (CEST) Received: from huawei.com (szxga04-in.huawei.com [45.249.212.190]) by dpdk.org (Postfix) with ESMTP id 6A33B1B9B5; Thu, 26 Sep 2019 16:03:13 +0200 (CEST) Received: from DGGEMS405-HUB.china.huawei.com (unknown [172.30.72.60]) by Forcepoint Email with ESMTP id AF02045EE417B39E2BA4; Thu, 26 Sep 2019 22:03:11 +0800 (CST) Received: from [127.0.0.1] (10.57.115.182) by DGGEMS405-HUB.china.huawei.com (10.3.19.205) with Microsoft SMTP Server id 14.3.439.0; Thu, 26 Sep 2019 22:03:05 +0800 To: Ferruh Yigit , Aaron Conole References: <1568985955-13548-1-git-send-email-xavier.huwei@huawei.com> <1965559f-a33f-e890-648a-0183f5511f46@huawei.com> <6de4756b-72c1-ef45-57dd-8c1a254746bf@huawei.com> <97f9e8ef-05e8-345a-d994-03930fcd5c35@intel.com> CC: , , , , , From: "Wei Hu (Xavier)" Message-ID: <7ac9e212-b07e-34f8-61b4-753c6460dcc7@huawei.com> Date: Thu, 26 Sep 2019 22:03:04 +0800 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <97f9e8ef-05e8-345a-d994-03930fcd5c35@intel.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.57.115.182] X-CFilter-Loop: Reflected Subject: Re: [dpdk-dev] [PATCH v2 00/22] add hns3 ethernet PMD driver X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 2019/9/26 15:55, Ferruh Yigit wrote: > On 9/25/2019 3:30 AM, Wei Hu (Xavier) wrote: >> >> On 2019/9/25 4:34, Aaron Conole wrote: >>> "Wei Hu (Xavier)" writes: >>> >>>> Hi, Ferruh Yigit >>>> >>>> I sent out patch V2 yesterday. And I found that the following page >>>> indicates that there is a compilation error. >>>> >>>> http://mails.dpdk.org/archives/test-report/2019-September/098385.html >>>> >>>> The relevant sections in the log: >>>> >>>> <...> >>>> >>>> *Meson Build Failed #1: OS: FC30-64 Target:build-gcc-static FAILED: >>>> drivers/a715181@@tmp_rte_pmd_hns3 at sta >>>> /net_hns3_hns3_ethdev_vf.c.o >>>> >>>> <...> >>>> >>>> ../drivers/net/hns3/hns3_ethdev_vf.c:1552:24: error: initialization of >>>> ‘void (*)(struct rte_eth_dev *, struct rte_eth_dev_info *)’ from >>>> incompatible pointer type ‘int (*)(struct rte_eth_dev *, struct >>>> rte_eth_dev_info *)’ [-Werror=incompatible-pointer-types] 1552 | >>>> .dev_infos_get = hns3vf_dev_infos_get, | ^~~~~~~~~~~~~~~~~~~~ >>>> ../drivers/net/hns3/hns3_ethdev_vf.c:1552:24: note: (near initialization >>>> for ‘hns3vf_eth_dev_ops.dev_infos_get’) cc1: all warnings being treated >>>> as errors >>>> >>>> <...> >>>> >>>> But I found that perhaps the reason for this compilation error is that >>>> the following patch was not built on CI, >>>> >>>> and it had been in the latest branch of the repository: >>>> http://dpdk.org/git/next/dpdk-next-net >>> The patch you reference is still not present. I guess perhaps it might >>> have been clobbered in a rebase? >> Hi, Aaron Conole >> >> The patch is still in the repository now, but the commit id has been >> changed. The detail information as below: >> >> repo: http://dpdk.org/git/next/dpdk-next-net >> branch: master >> >> commit b90f5e9b44c088d0bfa77d0458f5b28045935835 >> Author: Ivan Ilchenko >> Date: Thu Sep 12 17:42:28 2019 +0100 >> >> ethdev: change device info get callback to return int >> >> Change eth_dev_infos_get_t return value from void to int. >> Make eth_dev_infos_get_t implementations across all drivers to return >> negative errno values if case of error conditions. >> >> Signed-off-by: Ivan Ilchenko >> Signed-off-by: Andrew Rybchenko >> Reviewed-by: Ferruh Yigit >> >> <...> > Hi Xavier, > > The recent ethdev patches affects the drivers, please double check if you driver > is based on latest next-net? If it is, you can ignore the related build warnings > for now, it will settle down. Hi, Aaron Conole I found there was one conflict when performing git operation based on the latest next-net because of the recent change in the repository. I will send PATCH v3 to fix the conflict, Thanks. Regards Xavier >> diff --git a/lib/librte_ethdev/rte_ethdev_core.h >> b/lib/librte_ethdev/rte_ethdev_core.h >> index 2922d5b..2394b32 100644 >> --- a/lib/librte_ethdev/rte_ethdev_core.h >> +++ b/lib/librte_ethdev/rte_ethdev_core.h >> @@ -103,8 +103,8 @@ typedef int (*eth_queue_stats_mapping_set_t)(struct >> rte_eth_dev *dev, >> uint8_t is_rx); >> /**< @internal Set a queue statistics mapping for a tx/rx queue of an >> Ethernet device. */ >> >> -typedef void (*eth_dev_infos_get_t)(struct rte_eth_dev *dev, >> - struct rte_eth_dev_info *dev_info); >> +typedef int (*eth_dev_infos_get_t)(struct rte_eth_dev *dev, >> + struct rte_eth_dev_info *dev_info); >> >> Thanks for your comment. >> >> Regards >> Xavier >> >>>> The information of the relevant patch as below: >>>> >>>> commit 84c4620318b642aea9b5388aa7fbc79a4fe6f29e >>>> Author: Ivan Ilchenko >>>> Date: Thu Sep 12 17:42:28 2019 +0100 >>>> >>>> ethdev: change device info get callback to return int >>>> >>>> diff --git a/lib/librte_ethdev/rte_ethdev_core.h >>>> b/lib/librte_ethdev/rte_ethdev_core.h >>>> index 2922d5b..2394b32 100644 >>>> --- a/lib/librte_ethdev/rte_ethdev_core.h >>>> +++ b/lib/librte_ethdev/rte_ethdev_core.h >>>> @@ -103,8 +103,8 @@ typedef int (*eth_queue_stats_mapping_set_t)(struct >>>> rte_eth_dev *dev, >>>> uint8_t is_rx); >>>> /**< @internal Set a queue statistics mapping for a tx/rx queue of an >>>> Ethernet device. */ >>>> >>>> -typedef void (*eth_dev_infos_get_t)(struct rte_eth_dev *dev, >>>> - struct rte_eth_dev_info *dev_info); >>>> +typedef int (*eth_dev_infos_get_t)(struct rte_eth_dev *dev, >>>> + struct rte_eth_dev_info *dev_info); >>>> /**< @internal Get specific information of an Ethernet device. */ >>>> >>>> >>>> Regards >>>> Xavier >>>> >>>> On 2019/9/20 21:25, Wei Hu (Xavier) wrote: >>>>> The Hisilicon Network Subsystem is a long term evolution IP which is >>>>> supposed to be used in Hisilicon ICT SoCs such as Kunpeng 920. >>>>> >>>>> This series add DPDK rte_ethdev poll mode driver for Hisilicon >>>>> Network Subsystem 3(hns3) network engine. >>>>> >>>>> Wei Hu (Xavier) (22): >>>>> net/hns3: add hns3 build and doc infrastructure >>>>> net/hns3: add hardware registers definition >>>>> net/hns3: add some definitions for data structure and macro >>>>> net/hns3: register hns3 PMD driver and add the log interface >>>>> definition >>>>> net/hns3: add support for cmd of hns3 PMD driver >>>>> net/hns3: add the initialization of hns3 PMD driver >>>>> net/hns3: add support for MAC address related operations >>>>> net/hns3: add support for some misc operations >>>>> net/hns3: add support for link_update operation >>>>> net/hns3: add support for flow directory of hns3 PMD driver >>>>> net/hns3: add support for RSS of hns3 PMD driver >>>>> net/hns3: add support for flow control of hns3 PMD driver >>>>> net/hns3: add support for vlan of hns3 PMD driver >>>>> net/hns3: add support for mailbox of hns3 PMD driver >>>>> net/hns3: add support for hns3 VF PMD driver >>>>> net/hns3: add RX/TX package burst and queue related operation >>>>> net/hns3: add start stop configure promiscuous ops >>>>> net/hns3: add dump register ops for hns3 PMD driver >>>>> net/hns3: add abnormal interrupt process for hns3 PMD driver >>>>> net/hns3: add stats related ops for hns3 PMD driver >>>>> net/hns3: add reset related process for hns3 PMD driver >>>>> net/hns3: add multiple process support for hns3 PMD driver >>>>> >>>>> MAINTAINERS | 8 + >>>>> config/common_base | 5 + >>>>> config/common_linux | 5 + >>>>> config/defconfig_arm-armv7a-linuxapp-gcc | 1 + >>>>> config/defconfig_i686-native-linuxapp-gcc | 5 + >>>>> config/defconfig_i686-native-linuxapp-icc | 5 + >>>>> config/defconfig_ppc_64-power8-linuxapp-gcc | 1 + >>>>> config/defconfig_x86_64-native-linuxapp-icc | 5 + >>>>> config/defconfig_x86_x32-native-linuxapp-gcc | 5 + >>>>> doc/guides/nics/features/hns3.ini | 34 + >>>>> doc/guides/nics/features/hns3_vf.ini | 29 + >>>>> doc/guides/nics/hns3.rst | 60 + >>>>> doc/guides/nics/index.rst | 1 + >>>>> doc/guides/rel_notes/release_19_11.rst | 5 + >>>>> drivers/net/Makefile | 1 + >>>>> drivers/net/hns3/Makefile | 45 + >>>>> drivers/net/hns3/hns3_cmd.c | 565 +++ >>>>> drivers/net/hns3/hns3_cmd.h | 761 ++++ >>>>> drivers/net/hns3/hns3_dcb.c | 1642 +++++++++ >>>>> drivers/net/hns3/hns3_dcb.h | 166 + >>>>> drivers/net/hns3/hns3_ethdev.c | 4939 ++++++++++++++++++++++++++ >>>>> drivers/net/hns3/hns3_ethdev.h | 645 ++++ >>>>> drivers/net/hns3/hns3_ethdev_vf.c | 1735 +++++++++ >>>>> drivers/net/hns3/hns3_fdir.c | 1059 ++++++ >>>>> drivers/net/hns3/hns3_fdir.h | 205 ++ >>>>> drivers/net/hns3/hns3_flow.c | 1903 ++++++++++ >>>>> drivers/net/hns3/hns3_intr.c | 1166 ++++++ >>>>> drivers/net/hns3/hns3_intr.h | 79 + >>>>> drivers/net/hns3/hns3_logs.h | 34 + >>>>> drivers/net/hns3/hns3_mbx.c | 353 ++ >>>>> drivers/net/hns3/hns3_mbx.h | 136 + >>>>> drivers/net/hns3/hns3_mp.c | 214 ++ >>>>> drivers/net/hns3/hns3_mp.h | 14 + >>>>> drivers/net/hns3/hns3_regs.c | 368 ++ >>>>> drivers/net/hns3/hns3_regs.h | 99 + >>>>> drivers/net/hns3/hns3_rss.c | 584 +++ >>>>> drivers/net/hns3/hns3_rss.h | 124 + >>>>> drivers/net/hns3/hns3_rxtx.c | 1676 +++++++++ >>>>> drivers/net/hns3/hns3_rxtx.h | 317 ++ >>>>> drivers/net/hns3/hns3_stats.c | 971 +++++ >>>>> drivers/net/hns3/hns3_stats.h | 152 + >>>>> drivers/net/hns3/meson.build | 37 + >>>>> drivers/net/hns3/rte_pmd_hns3_version.map | 3 + >>>>> drivers/net/meson.build | 1 + >>>>> mk/rte.app.mk | 1 + >>>>> 45 files changed, 20164 insertions(+) >>>>> create mode 100644 doc/guides/nics/features/hns3.ini >>>>> create mode 100644 doc/guides/nics/features/hns3_vf.ini >>>>> create mode 100644 doc/guides/nics/hns3.rst >>>>> create mode 100644 drivers/net/hns3/Makefile >>>>> create mode 100644 drivers/net/hns3/hns3_cmd.c >>>>> create mode 100644 drivers/net/hns3/hns3_cmd.h >>>>> create mode 100644 drivers/net/hns3/hns3_dcb.c >>>>> create mode 100644 drivers/net/hns3/hns3_dcb.h >>>>> create mode 100644 drivers/net/hns3/hns3_ethdev.c >>>>> create mode 100644 drivers/net/hns3/hns3_ethdev.h >>>>> create mode 100644 drivers/net/hns3/hns3_ethdev_vf.c >>>>> create mode 100644 drivers/net/hns3/hns3_fdir.c >>>>> create mode 100644 drivers/net/hns3/hns3_fdir.h >>>>> create mode 100644 drivers/net/hns3/hns3_flow.c >>>>> create mode 100644 drivers/net/hns3/hns3_intr.c >>>>> create mode 100644 drivers/net/hns3/hns3_intr.h >>>>> create mode 100644 drivers/net/hns3/hns3_logs.h >>>>> create mode 100644 drivers/net/hns3/hns3_mbx.c >>>>> create mode 100644 drivers/net/hns3/hns3_mbx.h >>>>> create mode 100644 drivers/net/hns3/hns3_mp.c >>>>> create mode 100644 drivers/net/hns3/hns3_mp.h >>>>> create mode 100644 drivers/net/hns3/hns3_regs.c >>>>> create mode 100644 drivers/net/hns3/hns3_regs.h >>>>> create mode 100644 drivers/net/hns3/hns3_rss.c >>>>> create mode 100644 drivers/net/hns3/hns3_rss.h >>>>> create mode 100644 drivers/net/hns3/hns3_rxtx.c >>>>> create mode 100644 drivers/net/hns3/hns3_rxtx.h >>>>> create mode 100644 drivers/net/hns3/hns3_stats.c >>>>> create mode 100644 drivers/net/hns3/hns3_stats.h >>>>> create mode 100644 drivers/net/hns3/meson.build >>>>> create mode 100644 drivers/net/hns3/rte_pmd_hns3_version.map >>>>> >>> . >>> >> > > . >