From patchwork Mon Aug 2 14:13:48 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Renata Saiakhova X-Patchwork-Id: 96544 X-Patchwork-Delegate: qi.z.zhang@intel.com Return-Path: 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 54587A0C41; Mon, 2 Aug 2021 16:14:15 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 3F0D741173; Mon, 2 Aug 2021 16:14:11 +0200 (CEST) Received: from FRA01-MR2-obe.outbound.protection.outlook.com (mail-eopbgr90133.outbound.protection.outlook.com [40.107.9.133]) by mails.dpdk.org (Postfix) with ESMTP id 8A0E741169 for ; Mon, 2 Aug 2021 16:14:09 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XmNdPBO1+t8LiK1zqxJzJ8S8cAb1Yuvc+xVhoWlIRNuoEGcS+mn9fiTcbjqGAH14g5ZtVhS3g2dhzQnKapB6+Vo2mMrb4RpJFpXwqDeSHM1ugWyKTRO2IXp91xts7dcjo64DA1CCquXdBsJIRXHIbzMZ90zP/ONT2iHQcdhyLV8f9YuRpVku1JrvP/CdopPGn5CWF27LI+XEn9+RY330J9/1PhcvH0ryVgRf7TwFvdS++kaTuvpijyAsFyi6VlRIunh0azCp1TNWkyUDaD4vHhGEh3ahnUIBCmmqEdZVVnTPapf4j/S+2WZLzobczf9iY++/bCqKD1to1cGAg17Q4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+joD0F6k31fjr/Rr12rz/VpoZSDKRACPnSco/ly1FVY=; b=QXqpnHGnj0ecbOs1Yx3xrVU/tjxL0Ku4ZhzDM2b9noXOdaQu+DFEoZGN4fIw9pnyNw9Wd9bd4povkZDQBUsNqDepMVCGSGC4p45SyP+8qt44jO06p7Rjo8vo3nyoGWxYklgCFDvZ8IOuCYyBchhnoQ6Lx12+5162a0aUFM1wlAiHWU/UxGHeIj/ekcyCr/Z86gLJgD6vBvf9F0lEN2IbgjurxyUlkEbs6z7D4R0+cIWZSGhDtCZyiEbaO5nEi/nzxhMtvN/80obDbdW76E8QiUgr9ArTHC0CVJNAa19t6fPMe0ovsBm93wB+rxhYNucuES+ZYYmYy1TW6sjlm9XfGg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ekinops.com; dmarc=pass action=none header.from=ekinops.com; dkim=pass header.d=ekinops.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ekinops.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+joD0F6k31fjr/Rr12rz/VpoZSDKRACPnSco/ly1FVY=; b=0OzV0+oO1y+2aaZbeEHk/nJvqCwCsCkgN9bo7r/rWBo2/bQx+Q2bP0m0i1kp+rwYHaXdm/egcTWWkgse0rrL0grqDh8wABc1ATBifLzHshyznuZQTJg51MlLGrmdBBahHMldiIfJzzEBeDfQatRDzmV3OkPun4GSjsoW6jrgHDY= Authentication-Results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=ekinops.com; Received: from MRZP264MB2442.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:7::10) by MR1P264MB1587.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:12::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.21; Mon, 2 Aug 2021 14:14:08 +0000 Received: from MRZP264MB2442.FRAP264.PROD.OUTLOOK.COM ([fe80::a59a:3da2:da6e:7f99]) by MRZP264MB2442.FRAP264.PROD.OUTLOOK.COM ([fe80::a59a:3da2:da6e:7f99%4]) with mapi id 15.20.4373.026; Mon, 2 Aug 2021 14:14:08 +0000 From: Renata Saiakhova To: Haiyue Wang Cc: dev@dpdk.org, Renata Saiakhova Date: Mon, 2 Aug 2021 16:13:48 +0200 Message-Id: <20210802141348.12946-2-Renata.Saiakhova@ekinops.com> X-Mailer: git-send-email 2.17.2 In-Reply-To: <20210802141348.12946-1-Renata.Saiakhova@ekinops.com> References: <20210802141348.12946-1-Renata.Saiakhova@ekinops.com> X-ClientProxiedBy: AM8P190CA0007.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:219::12) To MRZP264MB2442.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:7::10) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from renataOAB.oneaccess.intra (91.183.184.98) by AM8P190CA0007.EURP190.PROD.OUTLOOK.COM (2603:10a6:20b:219::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4373.18 via Frontend Transport; Mon, 2 Aug 2021 14:14:08 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 568091d8-58b7-4315-9a86-08d955bfcb3e X-MS-TrafficTypeDiagnostic: MR1P264MB1587: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:6430; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dVp/XHybCK13hOwEXG2NI50S3AaJkhatlGwR4pp/wgd0try4ypkZlMlLe4t/nrJTFAkL2W2dfFYwl9kyDj1+twzP0mP8DTqNVF7yAJdL+R4L3IH3h3nEFmc0NBjerM+8/zQxkNssKCmu6KKLlqhzJBikyR+BWD7nog7GDfbl7Ifp6wnYNf2jaC18FPIZsPa366R7EGguQj0RST56W1ZuqmCrXvJh5eayR6D+HYoimKc+Pr+ZvM32GX0ceng+alN1tYF12Kl/dVoLhkziWbghQW3/2vXvw15brlKTFRKJBvYqdAlHdbwxVZ96I9X4r/e9XVJNhQvUCsXUoIgnDQs50/kcu4ySVTpNZBuaI0KjSDkiIEgvLeDnsSmc8f2SNuozWdU97IC91Svwmy82PzHKlMFKWtSehS1KTP8VuvcMQHLplepksXFStPzw2TIXwL3Yp0zzrAbYUfLoMkMjtERKvJk//owiiPBRlXijmyH0ASEu5zhP0H2xnSugdJQjvFCPv55qmMuWld1wdoVmbNQhhfOrJeXvzEOw0uqKgchk/DOja857aQbeeqMnez5bpLUvPu9p/rp8U7BR3FxVv1LQqZQ/cGEzNzZxQCxuLyX4ZvMnwDi2f4821EJ6clsj+ZB1EqIDbOQGmWmdngis0+/F68K4Y5ZfFxES4hVoFa1ig4R6U3elvVeMaEbxNeipO9p+/ClpLwO09hLs5waNYsdCNw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MRZP264MB2442.FRAP264.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(39830400003)(136003)(396003)(366004)(346002)(376002)(186003)(86362001)(52116002)(26005)(6486002)(316002)(38350700002)(38100700002)(36756003)(5660300002)(4326008)(66946007)(107886003)(6916009)(2906002)(8936002)(2616005)(66476007)(6506007)(6512007)(6666004)(66556008)(1076003)(478600001)(956004); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?y5y5CmIDF7kqJD4yL7GuFgfTplDH?= =?utf-8?q?nbAMk0Vs4wj5EDHJaa3IkLeOSOdMGEDsjy4jLaTijzNxG+CyfVYsjzs1yfm0JIAQI?= =?utf-8?q?XFjKu3ylEQMbWMy0L54cVO0IfSh+HXxFJnuOCbhcf5z5BMpmTwhVw8CYS3NS2TaR7?= =?utf-8?q?04cascR1Ijw7yt793+8kMFpfJOyefE3Xkt1C9Oq1wU5ZeFZUjHxoW9myOYXpoWkcD?= =?utf-8?q?0rOPZZ14Cd5yztpkW8NH4AMpkjRK8/6zlP8IV7IBCQiFj05E4Ewj/NnTBy1iRwaYe?= =?utf-8?q?F9HTHKPUMTRT1zpuwLJtkKNmIgjmnErJyOjERZ74It0DDWUtMrpZeMC6Spq+G9OYT?= =?utf-8?q?SBGHP+sBrg5pCVyKhE37pn1LE2cFyjiFQcGeYExyEgbaiEkCSGdft5G6VthSRX093?= =?utf-8?q?C5NXbZiyLUbwlr2UX1cKa5DDVzqE2cszO/mkEr/o80nrzVfnGH34oojdPMDgvfzCh?= =?utf-8?q?Wj2blCC9QumLZjuPh3PFtz6NCGkrvH+LVUlJrVQFxcCm/vfvQwR7kb0UvF99c1YTo?= =?utf-8?q?9/8gH2PPe8Hscx33bM1zLYq/kHRtaA69x5AyV5EZiFnvWDwH5MJw9r33XAZndcqi1?= =?utf-8?q?L3EfTTAzpeGBTCGl9DDIbO61E12FJouscroFjqpOEYQ85Nf6O9JK+4E9Uaq2k//aq?= =?utf-8?q?x816ToxrQyf4bGiRdtiayQSP5F5jR8voT6xVEs/Iyhg6RUWf/E+QArwHe+LVFgW40?= =?utf-8?q?SAuo4nZ+BNAq6QfdfK06QHvpyref9g4Wr+kJgXh+Jbovt5XC5uae6zqlSRVJ1LqdT?= =?utf-8?q?o0OC1Nuqd6EGVAW66NidIP+zvW4I4SFWugrb2Kdjmgm+wNZ0pJMN3lHDkQaPzjk20?= =?utf-8?q?guWslFdlFHqlSyjNREBm5oqgZqemUd102cnY81ZBeGU2DRkUTM5bNkx1MyHVrDq+x?= =?utf-8?q?nuRNsQMxw6mq1fshUavUOzNrZSNdgtIe+g1TDrWjrRz1U0Fr+sOmEuyy+LEp34bJj?= =?utf-8?q?uzSC0FzB5Ol9Gn394GdC1OxPLl34p2MEWSgJipuKB+59SCuTZBJtZUP8ox1h8DU0+?= =?utf-8?q?BE+aRvFjCIbWmAPawCbY/j7dVKyKQysv6BrqIDzUVa7vtcduw4uhJ3CdNePBUO7pP?= =?utf-8?q?2dbKelP/2jEP515qBtRKMy+PbnMVfDmF3bgNosCA2gg0g6KVrtbha+QsjD7peYxdM?= =?utf-8?q?ReMnkPcBmpKei2Sv5fAFfaez561JoKfdCjhpcSUaSU7o8ps/RkdPyiLSTYoSWzgtB?= =?utf-8?q?suW5vlqOHw3V/a605MOgwvNIz7zzFfOnUag+M9TGHwcF61GjazQirnTB0xaJLYCEV?= =?utf-8?q?e3+5RJL8wRQv7hYw?= X-OriginatorOrg: ekinops.com X-MS-Exchange-CrossTenant-Network-Message-Id: 568091d8-58b7-4315-9a86-08d955bfcb3e X-MS-Exchange-CrossTenant-AuthSource: MRZP264MB2442.FRAP264.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2021 14:14:08.7424 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f57b78a6-c654-4771-a72f-837275f46179 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: a9hcqw84DXQ4M7IjBTDzSBmh6auDY5bmbcF69/EKLr0cab28WZQ1UeSJT4KOSBPfeTDFIMKXB8cn9z9mHJd+bV2dbprJvmM7+rb/AEP3EWs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MR1P264MB1587 Subject: [dpdk-dev] =?utf-8?q?=5BPATCH_1/1=5D_drivers/net/e1000=3A_igbvf=5Fv?= =?utf-8?q?lan=5Foffload=5Fconfig_and=C2=A0igbvf=5Fvlan=5Foffload=5Fset_impl?= =?utf-8?q?ementation?= 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 Sender: "dev" igbvf_vlan_offload_config and igbvf_vlan_offload_set primal implementation, setting vlan filter mask at igbvf_dev_start time. Without the above a vlan filter for igbvf is not functional. Signed-off-by: Renata Saiakhova --- drivers/net/e1000/igb_ethdev.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c index 10ee0f3341..4c8478427c 100644 --- a/drivers/net/e1000/igb_ethdev.c +++ b/drivers/net/e1000/igb_ethdev.c @@ -171,6 +171,8 @@ static int eth_igbvf_xstats_get_names(struct rte_eth_dev *dev, static int eth_igbvf_stats_reset(struct rte_eth_dev *dev); static int igbvf_vlan_filter_set(struct rte_eth_dev *dev, uint16_t vlan_id, int on); +static int igbvf_vlan_offload_config(struct rte_eth_dev *dev, int mask); +static int igbvf_vlan_offload_set(struct rte_eth_dev *dev, int mask); static int igbvf_set_vfta(struct e1000_hw *hw, uint16_t vid, bool on); static void igbvf_set_vfta_all(struct rte_eth_dev *dev, bool on); static int igbvf_default_mac_addr_set(struct rte_eth_dev *dev, @@ -410,6 +412,7 @@ static const struct eth_dev_ops igbvf_eth_dev_ops = { .xstats_get_names = eth_igbvf_xstats_get_names, .stats_reset = eth_igbvf_stats_reset, .xstats_reset = eth_igbvf_stats_reset, + .vlan_offload_set = igbvf_vlan_offload_set, .vlan_filter_set = igbvf_vlan_filter_set, .dev_infos_get = eth_igbvf_infos_get, .dev_supported_ptypes_get = eth_igb_supported_ptypes_get, @@ -3304,6 +3307,8 @@ igbvf_dev_start(struct rte_eth_dev *dev) struct rte_intr_handle *intr_handle = &pci_dev->intr_handle; int ret; uint32_t intr_vector = 0; + int mask; + int err; PMD_INIT_FUNC_TRACE(); @@ -3313,6 +3318,14 @@ igbvf_dev_start(struct rte_eth_dev *dev) /* Set all vfta */ igbvf_set_vfta_all(dev,1); + /* Set vlan filter mask */ + mask = ETH_VLAN_FILTER_MASK; + err = igbvf_vlan_offload_config(dev, mask); + if (err) { + PMD_INIT_LOG(ERR, "Unable to set VLAN offload (%d)", err); + return err; + } + eth_igbvf_tx_init(dev); /* This can fail when allocating mbufs for descriptor rings */ @@ -3531,6 +3544,21 @@ static void igbvf_set_vfta_all(struct rte_eth_dev *dev, bool on) } +static int +igbvf_vlan_offload_config(__rte_unused struct rte_eth_dev *dev, int mask) +{ + if (mask & ETH_VLAN_STRIP_MASK) + return -ENOTSUP; + return 0; +} + +static int +igbvf_vlan_offload_set(struct rte_eth_dev *dev, int mask) +{ + igbvf_vlan_offload_config(dev, mask); + return 0; +} + static int igbvf_vlan_filter_set(struct rte_eth_dev *dev, uint16_t vlan_id, int on) {