Message ID | 20210506142526.28245-1-mk@semihalf.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 205B9A0524; Thu, 6 May 2021 16:25:44 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8E8AC410DB; Thu, 6 May 2021 16:25:43 +0200 (CEST) Received: from mail-lf1-f41.google.com (mail-lf1-f41.google.com [209.85.167.41]) by mails.dpdk.org (Postfix) with ESMTP id 7549B4003F for <dev@dpdk.org>; Thu, 6 May 2021 16:25:42 +0200 (CEST) Received: by mail-lf1-f41.google.com with SMTP id x19so8080087lfa.2 for <dev@dpdk.org>; Thu, 06 May 2021 07:25:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=sioCaIco4zqXNMgrw8k+JsjZJGDa/qRnlk1Hg/ZEinc=; b=nfwBJUqJ432QCfuSb6aeGkQzHywViiSSzj7QBgDuzhLlMnZ6g9jN2OJQf1NCZ3mldO jlp83Ol8md3tLICiuj5EuZjFMdxfU2xMYzf1jrBr8BBOWnsg/l8r/l8+GTwmrsV6PfeD 06B+uhqYx4dIqTU7MI1+E5iFdSRulCYOKqmGr7TBbrulKSjfJbBsdAMQ3Jli0tQdg9HH 5Cz2jQobZ1lD5ozuKynIaJ1tIOloUvuNU9NK2D8q7cYaAPHejX1HrGi6Wz+bpNLhOw8N k82HhDV3TCUcZLjjdi9Fr61NensyU8k8oEoYaHpDvZFTVYqrlBTUMBKze3lVNNniUzIY dHIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=sioCaIco4zqXNMgrw8k+JsjZJGDa/qRnlk1Hg/ZEinc=; b=j9T30WKiaO7usFkI8PI6s7SA9bLk5sRya1H+6S0TI6fZB6HRezmeQtp6WtByAkmWkV zk8k46SJKb1Mc1LjQ01M2CcX1Hk/eyEmlBULQ8tsOnwowqb6xwa8FZogxpBNkcpONriH p0rcbPxiPsm7sIyJuIWoF8MfwxHC/dBEa9Zyp29pQ4iSZqhalS77ncj2mYyxuUgwZ8+l ShAI1lkVkMWsp0dD3k29XT/Utd2/5Hc3Iinu1DB0pitTKK/Y7N45oAxDuhn8K6+zk8gE mdEMuxoTqB9CfIJCgJ+4pYxz1uOtt6Ci1SoXp5+Jf8KVcJl2G5f8BqPqn5dkwRRXFrIk 8Cgw== X-Gm-Message-State: AOAM530oD0eF1PpFjCCqBYmDMs+XcuVPTuNBZfmeFRgkc8KEZOz1xuUz BnCLuqj6XoYPXIwjOSohdqbYPOvW3965RHbx X-Google-Smtp-Source: ABdhPJzuIIzGpvUS1GGcSWTA4MdEmSuY1FmsHw5OJ5e8QrikPJljPrzFhT4Ws//NZAYzY6kClo6Hrw== X-Received: by 2002:ac2:5ec6:: with SMTP id d6mr3079256lfq.365.1620311141495; Thu, 06 May 2021 07:25:41 -0700 (PDT) Received: from DESKTOP-U5LNN3J.localdomain (89-79-189-199.dynamic.chello.pl. [89.79.189.199]) by smtp.gmail.com with ESMTPSA id b40sm892908ljr.101.2021.05.06.07.25.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 May 2021 07:25:40 -0700 (PDT) From: Michal Krawczyk <mk@semihalf.com> To: dev@dpdk.org Cc: ndagan@amazon.com, gtzalik@amazon.com, igorch@amazon.com, upstream@semihalf.com, Michal Krawczyk <mk@semihalf.com> Date: Thu, 6 May 2021 16:25:04 +0200 Message-Id: <20210506142526.28245-1-mk@semihalf.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210505073348.6394-1-mk@semihalf.com> References: <20210505073348.6394-1-mk@semihalf.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v3 00/22] net/ena: update ENA PMD to v2.3.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
net/ena: update ENA PMD to v2.3.0
|
|
Message
Michal Krawczyk
May 6, 2021, 2:25 p.m. UTC
Hi, this version updates the driver to version 2.3.0, which fixes multiple bugs, contains part of the work on making the ENA PMD fully MP aware, and also updates HAL to the latest version. More detailed list of changes: * memcpy mapping to the dpdk-optimized version. * ena_com (HAL) update to the latest version. * Bug fixes for the large LLQ headers and devargs parsing. * Mbuf RSS hash presence indication. * Bug fix for the default ring size. * Various fixes for the SMP mode. v3: * Fix build of the PMD with the debug flags enabled. * Fix typo in the commit log of the version upgrade patch. v2: * Fix nested declaration of the rte_memcpy on arm64 architecture. Amit Bernstein (1): net/ena/base: adjust changes to lastest ena-com Igor Chauskin (2): net/ena: switch memcpy to dpdk-optimized version net/ena: fix parsing of large_llq_hdr argument Michal Krawczyk (12): net/ena/base: unify arg names for the functions net/ena/base: add dev arg to the logging macros net/ena/base: typos, style and comments improvements net/ena/base: fix issues from the static code scan net/ena/base: destroy multiple "wait events" net/ena/base: remove indir table from ENA feat ctx net/ena/base: remove mutable RSS from the host info net/ena/base: update generation date and commit net/ena/base: use rte_prefetch0_write net/ena: terminate devargs allowed keys with NULL net/ena: indicate Rx RSS hash presence net/ena: update version to v2.3.0 Stanislaw Kardach (7): net/ena: remove endian swap functions net/ena: handle spurious wakeups in ENA_WAIT_EVENT net/ena: support SMP for mz alloc counter net/ena: move default RSS key to shared mem net/ena: make ethdev references smp safe net/ena: disable dev_ops not supported in SMP net/ena: report default ring size doc/guides/rel_notes/release_21_05.rst | 13 + drivers/net/ena/base/ena_com.c | 379 +++++++++--------- drivers/net/ena/base/ena_com.h | 24 +- .../net/ena/base/ena_defs/ena_admin_defs.h | 98 ++--- drivers/net/ena/base/ena_defs/ena_gen_info.h | 4 +- drivers/net/ena/base/ena_eth_com.c | 94 +++-- drivers/net/ena/base/ena_eth_com.h | 17 +- drivers/net/ena/base/ena_plat_dpdk.h | 324 ++++++++------- drivers/net/ena/ena_ethdev.c | 156 ++++--- drivers/net/ena/ena_ethdev.h | 14 +- drivers/net/ena/ena_platform.h | 12 - 11 files changed, 636 insertions(+), 499 deletions(-)
Comments
On 5/6/2021 3:25 PM, Michal Krawczyk wrote: > Hi, > > this version updates the driver to version 2.3.0, which fixes multiple > bugs, contains part of the work on making the ENA PMD fully MP aware, and > also updates HAL to the latest version. > > More detailed list of changes: > * memcpy mapping to the dpdk-optimized version. > * ena_com (HAL) update to the latest version. > * Bug fixes for the large LLQ headers and devargs parsing. > * Mbuf RSS hash presence indication. > * Bug fix for the default ring size. > * Various fixes for the SMP mode. > > v3: > * Fix build of the PMD with the debug flags enabled. > * Fix typo in the commit log of the version upgrade patch. > > v2: > * Fix nested declaration of the rte_memcpy on arm64 architecture. > > Amit Bernstein (1): > net/ena/base: adjust changes to lastest ena-com > > Igor Chauskin (2): > net/ena: switch memcpy to dpdk-optimized version > net/ena: fix parsing of large_llq_hdr argument > > Michal Krawczyk (12): > net/ena/base: unify arg names for the functions > net/ena/base: add dev arg to the logging macros > net/ena/base: typos, style and comments improvements > net/ena/base: fix issues from the static code scan > net/ena/base: destroy multiple "wait events" > net/ena/base: remove indir table from ENA feat ctx > net/ena/base: remove mutable RSS from the host info > net/ena/base: update generation date and commit > net/ena/base: use rte_prefetch0_write > net/ena: terminate devargs allowed keys with NULL > net/ena: indicate Rx RSS hash presence > net/ena: update version to v2.3.0 > > Stanislaw Kardach (7): > net/ena: remove endian swap functions > net/ena: handle spurious wakeups in ENA_WAIT_EVENT > net/ena: support SMP for mz alloc counter > net/ena: move default RSS key to shared mem > net/ena: make ethdev references smp safe > net/ena: disable dev_ops not supported in SMP > net/ena: report default ring size > Hi Michal, There are some checkpatch and check-git-log.sh [1] warnings, can you please check them? You can see checkpatch warnings from patchwork: https://patches.dpdk.org/project/dpdk/list/?series=16861 The ones with yellow marker in the warning column. Additionally I am getting following checkpatch warning, that is not seen in CI: ### net/ena/base: add dev arg to the logging macros WARNING:UNNECESSARY_MODIFIER: Integer promotion: Using 'h' in '%hu' is unnecessary #331: FILE: drivers/net/ena/base/ena_com.c:861: + ena_trc_err(ena_dev, "Reading reg failed for timeout. expected: req id[%hu] offset[%hu] actual: req id[%hu] offset[%hu]\n", mmio_read->seq_num, offset, read_resp->req_id, @@ -854,7 +868,7 @@ static u32 ena_com_reg_bar_read32(struct ena_com_dev *ena_dev, u16 offset) [1] ./devtools/check-git-log.sh -22
On 5/7/2021 3:59 PM, Ferruh Yigit wrote: > On 5/6/2021 3:25 PM, Michal Krawczyk wrote: >> Hi, >> >> this version updates the driver to version 2.3.0, which fixes multiple >> bugs, contains part of the work on making the ENA PMD fully MP aware, and >> also updates HAL to the latest version. >> >> More detailed list of changes: >> * memcpy mapping to the dpdk-optimized version. >> * ena_com (HAL) update to the latest version. >> * Bug fixes for the large LLQ headers and devargs parsing. >> * Mbuf RSS hash presence indication. >> * Bug fix for the default ring size. >> * Various fixes for the SMP mode. >> >> v3: >> * Fix build of the PMD with the debug flags enabled. >> * Fix typo in the commit log of the version upgrade patch. >> >> v2: >> * Fix nested declaration of the rte_memcpy on arm64 architecture. >> >> Amit Bernstein (1): >> net/ena/base: adjust changes to lastest ena-com >> >> Igor Chauskin (2): >> net/ena: switch memcpy to dpdk-optimized version >> net/ena: fix parsing of large_llq_hdr argument >> >> Michal Krawczyk (12): >> net/ena/base: unify arg names for the functions >> net/ena/base: add dev arg to the logging macros >> net/ena/base: typos, style and comments improvements >> net/ena/base: fix issues from the static code scan >> net/ena/base: destroy multiple "wait events" >> net/ena/base: remove indir table from ENA feat ctx >> net/ena/base: remove mutable RSS from the host info >> net/ena/base: update generation date and commit >> net/ena/base: use rte_prefetch0_write >> net/ena: terminate devargs allowed keys with NULL >> net/ena: indicate Rx RSS hash presence >> net/ena: update version to v2.3.0 >> >> Stanislaw Kardach (7): >> net/ena: remove endian swap functions >> net/ena: handle spurious wakeups in ENA_WAIT_EVENT >> net/ena: support SMP for mz alloc counter >> net/ena: move default RSS key to shared mem >> net/ena: make ethdev references smp safe >> net/ena: disable dev_ops not supported in SMP >> net/ena: report default ring size >> > > Hi Michal, > > There are some checkpatch and check-git-log.sh [1] warnings, can you please > check them? > > > You can see checkpatch warnings from patchwork: > https://patches.dpdk.org/project/dpdk/list/?series=16861 > The ones with yellow marker in the warning column. > > Additionally I am getting following checkpatch warning, that is not seen in CI: This must be because of the script version difference, cc'e Thomas, David & Aaron for it. > ### net/ena/base: add dev arg to the logging macros > > > > WARNING:UNNECESSARY_MODIFIER: Integer promotion: Using 'h' in '%hu' is > unnecessary > #331: FILE: drivers/net/ena/base/ena_com.c:861: > > + ena_trc_err(ena_dev, "Reading reg failed for timeout. expected: > req id[%hu] offset[%hu] actual: req id[%hu] offset[%hu]\n", > mmio_read->seq_num, > > offset, > > read_resp->req_id, > > @@ -854,7 +868,7 @@ static u32 ena_com_reg_bar_read32(struct ena_com_dev > *ena_dev, u16 offset) > > > > [1] > ./devtools/check-git-log.sh -22 >
On 5/6/2021 3:25 PM, Michal Krawczyk wrote: > Hi, > > this version updates the driver to version 2.3.0, which fixes multiple > bugs, contains part of the work on making the ENA PMD fully MP aware, and > also updates HAL to the latest version. > > More detailed list of changes: > * memcpy mapping to the dpdk-optimized version. > * ena_com (HAL) update to the latest version. > * Bug fixes for the large LLQ headers and devargs parsing. > * Mbuf RSS hash presence indication. > * Bug fix for the default ring size. > * Various fixes for the SMP mode. > Hi Michal, I want to confirm if this set is for this release or for v21.08. Since it is sent late, after -rc1, getting the series for the -rc3 won't give you any time to test it properly or fix any new found issues before release. My suggestion is to wait for next release, but can you please confirm if you want to get the risk and get the patch for this release or wait for v21.08? Thanks, ferruh
pt., 7 maj 2021 o 17:52 Ferruh Yigit <ferruh.yigit@intel.com> napisał(a): > > On 5/6/2021 3:25 PM, Michal Krawczyk wrote: > > Hi, > > > > this version updates the driver to version 2.3.0, which fixes multiple > > bugs, contains part of the work on making the ENA PMD fully MP aware, and > > also updates HAL to the latest version. > > > > More detailed list of changes: > > * memcpy mapping to the dpdk-optimized version. > > * ena_com (HAL) update to the latest version. > > * Bug fixes for the large LLQ headers and devargs parsing. > > * Mbuf RSS hash presence indication. > > * Bug fix for the default ring size. > > * Various fixes for the SMP mode. > > > > Hi Michal, > > I want to confirm if this set is for this release or for v21.08. > > Since it is sent late, after -rc1, getting the series for the -rc3 won't give > you any time to test it properly or fix any new found issues before release. > > My suggestion is to wait for next release, but can you please confirm if you > want to get the risk and get the patch for this release or wait for v21.08? Hi Ferruh, as this ENA release mainly introduces HAL upgrade and some bug fixes, we would like to take a risk and get the patches for this release if you're ok with that. Of course we can postpone some changes to the next release if needed, but although there are multiple patches, most of them are not the big ones (and there are no new features). Thanks, Michal > > Thanks, > ferruh
pt., 7 maj 2021 o 16:59 Ferruh Yigit <ferruh.yigit@intel.com> napisał(a): > > On 5/6/2021 3:25 PM, Michal Krawczyk wrote: > > Hi, > > > > this version updates the driver to version 2.3.0, which fixes multiple > > bugs, contains part of the work on making the ENA PMD fully MP aware, and > > also updates HAL to the latest version. > > > > More detailed list of changes: > > * memcpy mapping to the dpdk-optimized version. > > * ena_com (HAL) update to the latest version. > > * Bug fixes for the large LLQ headers and devargs parsing. > > * Mbuf RSS hash presence indication. > > * Bug fix for the default ring size. > > * Various fixes for the SMP mode. > > > > v3: > > * Fix build of the PMD with the debug flags enabled. > > * Fix typo in the commit log of the version upgrade patch. > > > > v2: > > * Fix nested declaration of the rte_memcpy on arm64 architecture. > > > > Amit Bernstein (1): > > net/ena/base: adjust changes to lastest ena-com > > > > Igor Chauskin (2): > > net/ena: switch memcpy to dpdk-optimized version > > net/ena: fix parsing of large_llq_hdr argument > > > > Michal Krawczyk (12): > > net/ena/base: unify arg names for the functions > > net/ena/base: add dev arg to the logging macros > > net/ena/base: typos, style and comments improvements > > net/ena/base: fix issues from the static code scan > > net/ena/base: destroy multiple "wait events" > > net/ena/base: remove indir table from ENA feat ctx > > net/ena/base: remove mutable RSS from the host info > > net/ena/base: update generation date and commit > > net/ena/base: use rte_prefetch0_write > > net/ena: terminate devargs allowed keys with NULL > > net/ena: indicate Rx RSS hash presence > > net/ena: update version to v2.3.0 > > > > Stanislaw Kardach (7): > > net/ena: remove endian swap functions > > net/ena: handle spurious wakeups in ENA_WAIT_EVENT > > net/ena: support SMP for mz alloc counter > > net/ena: move default RSS key to shared mem > > net/ena: make ethdev references smp safe > > net/ena: disable dev_ops not supported in SMP > > net/ena: report default ring size > > > > Hi Michal, > > There are some checkpatch and check-git-log.sh [1] warnings, can you please > check them? > Hi Ferruh, sure, I'll check them all and fix whatever is possible. The problem is with some of the HAL patches, which are just touching some lines on which the checkpatch returns a warning. Many of them aren't related to those patches, so I don't think we should fix them as part of those commits (like the one you listed below, the following patch just adds ena_dev as an extra input argument). Please let me know what you think about that. Thanks, Michal > > You can see checkpatch warnings from patchwork: > https://patches.dpdk.org/project/dpdk/list/?series=16861 > The ones with yellow marker in the warning column. > > Additionally I am getting following checkpatch warning, that is not seen in CI: > ### net/ena/base: add dev arg to the logging macros > > > > WARNING:UNNECESSARY_MODIFIER: Integer promotion: Using 'h' in '%hu' is > unnecessary > #331: FILE: drivers/net/ena/base/ena_com.c:861: > > + ena_trc_err(ena_dev, "Reading reg failed for timeout. expected: > req id[%hu] offset[%hu] actual: req id[%hu] offset[%hu]\n", > mmio_read->seq_num, > > offset, > > read_resp->req_id, > > @@ -854,7 +868,7 @@ static u32 ena_com_reg_bar_read32(struct ena_com_dev > *ena_dev, u16 offset) > > > > [1] > ./devtools/check-git-log.sh -22
On 5/10/2021 1:02 PM, Michał Krawczyk wrote: > pt., 7 maj 2021 o 16:59 Ferruh Yigit <ferruh.yigit@intel.com> napisał(a): >> >> On 5/6/2021 3:25 PM, Michal Krawczyk wrote: >>> Hi, >>> >>> this version updates the driver to version 2.3.0, which fixes multiple >>> bugs, contains part of the work on making the ENA PMD fully MP aware, and >>> also updates HAL to the latest version. >>> >>> More detailed list of changes: >>> * memcpy mapping to the dpdk-optimized version. >>> * ena_com (HAL) update to the latest version. >>> * Bug fixes for the large LLQ headers and devargs parsing. >>> * Mbuf RSS hash presence indication. >>> * Bug fix for the default ring size. >>> * Various fixes for the SMP mode. >>> >>> v3: >>> * Fix build of the PMD with the debug flags enabled. >>> * Fix typo in the commit log of the version upgrade patch. >>> >>> v2: >>> * Fix nested declaration of the rte_memcpy on arm64 architecture. >>> >>> Amit Bernstein (1): >>> net/ena/base: adjust changes to lastest ena-com >>> >>> Igor Chauskin (2): >>> net/ena: switch memcpy to dpdk-optimized version >>> net/ena: fix parsing of large_llq_hdr argument >>> >>> Michal Krawczyk (12): >>> net/ena/base: unify arg names for the functions >>> net/ena/base: add dev arg to the logging macros >>> net/ena/base: typos, style and comments improvements >>> net/ena/base: fix issues from the static code scan >>> net/ena/base: destroy multiple "wait events" >>> net/ena/base: remove indir table from ENA feat ctx >>> net/ena/base: remove mutable RSS from the host info >>> net/ena/base: update generation date and commit >>> net/ena/base: use rte_prefetch0_write >>> net/ena: terminate devargs allowed keys with NULL >>> net/ena: indicate Rx RSS hash presence >>> net/ena: update version to v2.3.0 >>> >>> Stanislaw Kardach (7): >>> net/ena: remove endian swap functions >>> net/ena: handle spurious wakeups in ENA_WAIT_EVENT >>> net/ena: support SMP for mz alloc counter >>> net/ena: move default RSS key to shared mem >>> net/ena: make ethdev references smp safe >>> net/ena: disable dev_ops not supported in SMP >>> net/ena: report default ring size >>> >> >> Hi Michal, >> >> There are some checkpatch and check-git-log.sh [1] warnings, can you please >> check them? >> > > Hi Ferruh, > > sure, I'll check them all and fix whatever is possible. The problem is > with some of the HAL patches, which are just touching some lines on > which the checkpatch returns a warning. Many of them aren't related to > those patches, so I don't think we should fix them as part of those > commits (like the one you listed below, the following patch just adds > ena_dev as an extra input argument). Please let me know what you think > about that. > Hi Michal, For the new code I think expectation is clear that it should fully comply the coding convention, but for the base code we are more flexible, since it is shared I understand that the small fixes may cause more maintenance cost. Please try to fix as much as possible, at least please fix the obviously wrong ones and fix the ones like below with best effort. Thanks, ferruh > Thanks, > Michal > >> >> You can see checkpatch warnings from patchwork: >> https://patches.dpdk.org/project/dpdk/list/?series=16861 >> The ones with yellow marker in the warning column. >> >> Additionally I am getting following checkpatch warning, that is not seen in CI: >> ### net/ena/base: add dev arg to the logging macros >> >> >> >> WARNING:UNNECESSARY_MODIFIER: Integer promotion: Using 'h' in '%hu' is >> unnecessary >> #331: FILE: drivers/net/ena/base/ena_com.c:861: >> >> + ena_trc_err(ena_dev, "Reading reg failed for timeout. expected: >> req id[%hu] offset[%hu] actual: req id[%hu] offset[%hu]\n", >> mmio_read->seq_num, >> >> offset, >> >> read_resp->req_id, >> >> @@ -854,7 +868,7 @@ static u32 ena_com_reg_bar_read32(struct ena_com_dev >> *ena_dev, u16 offset) >> >> >> >> [1] >> ./devtools/check-git-log.sh -22