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 15A7F43270 for ; Thu, 2 Nov 2023 16:41:41 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E606040144; Thu, 2 Nov 2023 16:41:40 +0100 (CET) Received: from mail-ua1-f100.google.com (mail-ua1-f100.google.com [209.85.222.100]) by mails.dpdk.org (Postfix) with ESMTP id EA60640144 for ; Thu, 2 Nov 2023 16:41:39 +0100 (CET) Received: by mail-ua1-f100.google.com with SMTP id a1e0cc1a2514c-7b625ed7208so408472241.1 for ; Thu, 02 Nov 2023 08:41:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; t=1698939699; x=1699544499; darn=dpdk.org; h=cc:to:from:subject:message-id:date:from:to:cc:subject:date :message-id:reply-to; bh=N8ZdiYludyWZVBsGyrFOSV3mjKnz8vqVFnVQyrzklck=; b=IkdeaeNaJT+ydhG6tuUcUfNDiJcvKkOUa5ofEr6p+GdnqZJ26gX606xtHH5Plwc6d0 b2HWRR/pSyfQpUQkFalDh7jzsmdQfFjuyPExejhQF/JTjdZRGyi2gN3TveVkSFr/ahpy 7TTh7jX7KHvG6brs77IRN7lLtqzK8IFzpeTTM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1698939699; x=1699544499; h=cc:to:from:subject:message-id:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=N8ZdiYludyWZVBsGyrFOSV3mjKnz8vqVFnVQyrzklck=; b=oP4ygNaV6HF2bLnlq1vaSGEJKUCXrpwcrOpK6TjdDj8uZJnvcCS45riD7M7bBKQnbO ql3ciqvO7oCcRCALH59+NEnxKqu9+opObgYhr+S5ouBWK9pWsKjYliKSyOkhh0FivZ/r OjPhBUonpJSrisdQk2vedwtQmcO/pRoVJIyxgzjfcegbJI2sno3QXWdZejuFA5uqjCiX NgUJB8G8IEmlrJH+W9bNJILCY/8Cf2igSwXhPxPcJqqrFIRqvhLc1TCuKU5XKLFdlqIY oxgJA1UAQvftQIAWXyZSGcgTtCWtXOAumGiE8b3CKR/+5AnWrzZkcvTUg4P4H7oDyGOV CRAw== X-Gm-Message-State: AOJu0Yz48Qx+19SHR3VFCDNh6FOtOxdwEsQwCtOyZ2j7DFsZD54tB5Hn LEnFWjWBHllapM01i8eA9yrXZcTgXzsR86l2o71jY9mHrPDEGKG6poabSg== X-Google-Smtp-Source: AGHT+IHQNBK+tTA9IHw0LwT+YSTLrkmBcDxaZsZa30gZNcMe4NgBJhyVage5qLzEYFD+Vi3GaueRAUf9TC0b X-Received: by 2002:a67:e041:0:b0:458:64ae:fc1a with SMTP id n1-20020a67e041000000b0045864aefc1amr17060777vsl.19.1698939699170; Thu, 02 Nov 2023 08:41:39 -0700 (PDT) Received: from postal.iol.unh.edu (postal.iol.unh.edu. [132.177.123.84]) by smtp-relay.gmail.com with ESMTPS id da12-20020a056130230c00b0079dbeb04948sm1241128uab.19.2023.11.02.08.41.39 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 02 Nov 2023 08:41:39 -0700 (PDT) X-Relaying-Domain: iol.unh.edu Date: Thu, 02 Nov 2023 08:41:39 -0700 (PDT) Message-ID: <6543c333.050a0220.21210.304eSMTPIN_ADDED_MISSING@mx.google.com> Received: from [172.21.0.2] (unknown [172.18.0.240]) by postal.iol.unh.edu (Postfix) with ESMTP id CDE226050A61; Thu, 2 Nov 2023 11:41:38 -0400 (EDT) Subject: |WARNING| pw133766 [PATCH] net/nfp: add support of dynamic config of allmulticast mode From: dpdklab@iol.unh.edu To: test-report@dpdk.org Cc: dpdk-test-reports@iol.unh.edu Content-Type: text/plain X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: test-report-bounces@dpdk.org Test-Label: iol-testing Test-Status: WARNING http://dpdk.org/patch/133766 _apply patch failure_ Submitter: Chaoyong He Date: Thursday, November 02 2023 05:37:44 Applied on: CommitID:71f9da6691c49d0dfcf088dce5e99c488af0eb7e Apply patch set 133766 failed: Checking patch doc/guides/nics/features/nfp.ini... error: while searching for: Queue start/stop = Y MTU update = Y Promiscuous mode = Y TSO = Y RSS hash = Y RSS key update = Y error: patch failed: doc/guides/nics/features/nfp.ini:11 Checking patch drivers/common/nfp/nfp_common_ctrl.h... error: while searching for: #define NFP_NET_CFG_CTRL_WORD1 0x0098 #define NFP_NET_CFG_CTRL_PKT_TYPE (0x1 << 0) #define NFP_NET_CFG_CTRL_IPSEC (0x1 << 1) /**< IPsec offload */ #define NFP_NET_CFG_CTRL_IPSEC_SM_LOOKUP (0x1 << 3) /**< SA short match lookup */ #define NFP_NET_CFG_CTRL_IPSEC_LM_LOOKUP (0x1 << 4) /**< SA long match lookup */ #define NFP_NET_CFG_CTRL_IN_ORDER (0x1 << 11) /**< Virtio in-order flag */ error: patch failed: drivers/common/nfp/nfp_common_ctrl.h:219 Checking patch drivers/net/nfp/nfp_ethdev.c... error: while searching for: .dev_close = nfp_net_close, .promiscuous_enable = nfp_net_promisc_enable, .promiscuous_disable = nfp_net_promisc_disable, .link_update = nfp_net_link_update, .stats_get = nfp_net_stats_get, .stats_reset = nfp_net_stats_reset, error: patch failed: drivers/net/nfp/nfp_ethdev.c:402 Checking patch drivers/net/nfp/nfp_ethdev_vf.c... error: while searching for: .dev_close = nfp_netvf_close, .promiscuous_enable = nfp_net_promisc_enable, .promiscuous_disable = nfp_net_promisc_disable, .link_update = nfp_net_link_update, .stats_get = nfp_net_stats_get, .stats_reset = nfp_net_stats_reset, error: patch failed: drivers/net/nfp/nfp_ethdev_vf.c:199 Checking patch drivers/net/nfp/nfp_net_common.c... error: while searching for: return 0; } int nfp_net_link_update_common(struct rte_eth_dev *dev, struct nfp_net_hw *hw, error: patch failed: drivers/net/nfp/nfp_net_common.c:583 Checking patch drivers/net/nfp/nfp_net_common.h... error: while searching for: uint32_t nfp_check_offloads(struct rte_eth_dev *dev); int nfp_net_promisc_enable(struct rte_eth_dev *dev); int nfp_net_promisc_disable(struct rte_eth_dev *dev); int nfp_net_link_update_common(struct rte_eth_dev *dev, struct nfp_net_hw *hw, struct rte_eth_link *link, error: patch failed: drivers/net/nfp/nfp_net_common.h:174 Applying patch doc/guides/nics/features/nfp.ini with 1 reject... Rejected hunk #1. Applying patch drivers/common/nfp/nfp_common_ctrl.h with 1 reject... Rejected hunk #1. Applying patch drivers/net/nfp/nfp_ethdev.c with 1 reject... Rejected hunk #1. Applying patch drivers/net/nfp/nfp_ethdev_vf.c with 1 reject... Rejected hunk #1. Applying patch drivers/net/nfp/nfp_net_common.c with 1 reject... Rejected hunk #1. Applying patch drivers/net/nfp/nfp_net_common.h with 1 reject... Rejected hunk #1. hint: Use 'git am --show-current-patch' to see the failed patch diff a/doc/guides/nics/features/nfp.ini b/doc/guides/nics/features/nfp.ini (rejected hunks) @@ -11,6 +11,7 @@ Rx interrupt = Y Queue start/stop = Y MTU update = Y Promiscuous mode = Y +Allmulticast mode = Y TSO = Y RSS hash = Y RSS key update = Y diff a/drivers/common/nfp/nfp_common_ctrl.h b/drivers/common/nfp/nfp_common_ctrl.h (rejected hunks) @@ -219,6 +219,7 @@ struct nfp_net_fw_ver { #define NFP_NET_CFG_CTRL_WORD1 0x0098 #define NFP_NET_CFG_CTRL_PKT_TYPE (0x1 << 0) #define NFP_NET_CFG_CTRL_IPSEC (0x1 << 1) /**< IPsec offload */ +#define NFP_NET_CFG_CTRL_MCAST_FILTER (0x1 << 2) /**< Multicast Filter */ #define NFP_NET_CFG_CTRL_IPSEC_SM_LOOKUP (0x1 << 3) /**< SA short match lookup */ #define NFP_NET_CFG_CTRL_IPSEC_LM_LOOKUP (0x1 << 4) /**< SA long match lookup */ #define NFP_NET_CFG_CTRL_IN_ORDER (0x1 << 11) /**< Virtio in-order flag */ diff a/drivers/net/nfp/nfp_ethdev.c b/drivers/net/nfp/nfp_ethdev.c (rejected hunks) @@ -402,6 +402,8 @@ static const struct eth_dev_ops nfp_net_eth_dev_ops = { .dev_close = nfp_net_close, .promiscuous_enable = nfp_net_promisc_enable, .promiscuous_disable = nfp_net_promisc_disable, + .allmulticast_enable = nfp_net_allmulticast_enable, + .allmulticast_disable = nfp_net_allmulticast_disable, .link_update = nfp_net_link_update, .stats_get = nfp_net_stats_get, .stats_reset = nfp_net_stats_reset, diff a/drivers/net/nfp/nfp_ethdev_vf.c b/drivers/net/nfp/nfp_ethdev_vf.c (rejected hunks) @@ -199,6 +199,8 @@ static const struct eth_dev_ops nfp_netvf_eth_dev_ops = { .dev_close = nfp_netvf_close, .promiscuous_enable = nfp_net_promisc_enable, .promiscuous_disable = nfp_net_promisc_disable, + .allmulticast_enable = nfp_net_allmulticast_enable, + .allmulticast_disable = nfp_net_allmulticast_disable, .link_update = nfp_net_link_update, .stats_get = nfp_net_stats_get, .stats_reset = nfp_net_stats_reset, diff a/drivers/net/nfp/nfp_net_common.c b/drivers/net/nfp/nfp_net_common.c (rejected hunks) @@ -583,6 +583,66 @@ nfp_net_promisc_disable(struct rte_eth_dev *dev) return 0; } +static int +nfp_net_set_allmulticast_mode(struct rte_eth_dev *dev, + bool enable) +{ + int ret; + uint32_t update; + struct nfp_hw *hw; + uint32_t cap_extend; + uint32_t ctrl_extend; + uint32_t new_ctrl_extend; + struct nfp_net_hw *net_hw; + + net_hw = nfp_net_get_hw(dev); + hw = &net_hw->super; + + cap_extend = hw->cap_ext; + if ((cap_extend & NFP_NET_CFG_CTRL_MCAST_FILTER) == 0) { + PMD_DRV_LOG(ERR, "Allmulticast mode not supported"); + return -ENOTSUP; + } + + /* + * Allmulticast mode enabled when NFP_NET_CFG_CTRL_MCAST_FILTER bit is 0. + * Allmulticast mode disabled when NFP_NET_CFG_CTRL_MCAST_FILTER bit is 1. + */ + ctrl_extend = hw->ctrl_ext; + if (enable) { + if ((ctrl_extend & NFP_NET_CFG_CTRL_MCAST_FILTER) == 0) + return 0; + + new_ctrl_extend = ctrl_extend & ~NFP_NET_CFG_CTRL_MCAST_FILTER; + } else { + if ((ctrl_extend & NFP_NET_CFG_CTRL_MCAST_FILTER) != 0) + return 0; + + new_ctrl_extend = ctrl_extend | NFP_NET_CFG_CTRL_MCAST_FILTER; + } + + update = NFP_NET_CFG_UPDATE_GEN; + + ret = nfp_ext_reconfig(hw, new_ctrl_extend, update); + if (ret != 0) + return ret; + + hw->ctrl_ext = new_ctrl_extend; + return 0; +} + +int +nfp_net_allmulticast_enable(struct rte_eth_dev *dev) +{ + return nfp_net_set_allmulticast_mode(dev, true); +} + +int +nfp_net_allmulticast_disable(struct rte_eth_dev *dev) +{ + return nfp_net_set_allmulticast_mode(dev, false); +} + int nfp_net_link_update_common(struct rte_eth_dev *dev, struct nfp_net_hw *hw, diff a/drivers/net/nfp/nfp_net_common.h b/drivers/net/nfp/nfp_net_common.h (rejected hunks) @@ -174,6 +174,8 @@ int nfp_configure_rx_interrupt(struct rte_eth_dev *dev, uint32_t nfp_check_offloads(struct rte_eth_dev *dev); int nfp_net_promisc_enable(struct rte_eth_dev *dev); int nfp_net_promisc_disable(struct rte_eth_dev *dev); +int nfp_net_allmulticast_enable(struct rte_eth_dev *dev); +int nfp_net_allmulticast_disable(struct rte_eth_dev *dev); int nfp_net_link_update_common(struct rte_eth_dev *dev, struct nfp_net_hw *hw, struct rte_eth_link *link, https://lab.dpdk.org/results/dashboard/patchsets/28195/ UNH-IOL DPDK Community Lab