Message ID | 20230614140714.14443-1-florian.kauer@linutronix.de |
---|---|
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:6358:640b:b0:12b:d5da:ddc2 with SMTP id f11csp1348913rwh; Wed, 14 Jun 2023 07:45:58 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ75vEBgCL2yenqDwzPb1RL0pYwi3OGflBfqfZo/AU5Ui0H+5TjCECMT2NMRbS8RR2HSCflr X-Received: by 2002:aa7:d150:0:b0:514:a454:175b with SMTP id r16-20020aa7d150000000b00514a454175bmr1973829edo.6.1686753958631; Wed, 14 Jun 2023 07:45:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1686753958; cv=none; d=google.com; s=arc-20160816; b=v5wzxIh/X4hhf7/OnP9TZpniRs09p9/UpwP9/kRG5HW2p6zOfTdFaXS3OYQkgwrLIw CUKpEIIP7rTQp7s/+x1fPrNOrQlD4wO1wH5v/uFl5LqJJaImVqh0ZU9IxMAFWOXgodCB v00m3joQPGcVg//dMRIvGhdZx0pVndwyr2D7ceVkKuUPFITw5szp4iUBHsCvs9W/w0V0 Qr21uRp7YfMVSjsUCBJfW5A48OLdhBLeFl8dCCN7K6QMQh6RL+8PrzmjJTuPIAaqD5GF WNM+J4pycGU3FvDY9cmFhR+1F3JYy9SWv5NA2HT+zWpavKK4dC/rX9tI+3Y0Guyeoa6F fsXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:dkim-signature:dkim-signature:from; bh=EJvyE/C3PvQNTvDv0SaWnfKcEUXisJIN7Dyyhzdk0bk=; b=xc8H/KchzYD1H+ZrZ67+4mXeD1ZV8nMrKAAaffn1dDElZha4UMZidAoC9KejtJiNf/ ZFaG7Ld2t3S5tqfPw0vMJMjiRt0Lhh8YGV2SXiaBiLkMCEaBBdZrB1+daukvOvnZ5kak 6Rsi5f7+1wJrr30ZkEXGjETIbaCBz9a8lXavh6c2aS5JOHapMCNmQGEflwAajgkGRf0B 4YSefXwYT3Wt2hfhQqi91pAdTx2UhlNmHVUEZFhjY1Y9Mbm8DcnNd0lsN1bjTHbE63Qb ego9sqCNH4AhgwFFQN4eJjU7pBb+HLeoOiG8RF9t6VYDX7bkyOXPgNlvzl3aHSSY+Vpe Aa7Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=3Q9xpOFU; dkim=neutral (no key) header.i=@linutronix.de; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=linutronix.de Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id e18-20020a056402089200b00514a6d05de1si9037162edy.409.2023.06.14.07.45.05; Wed, 14 Jun 2023 07:45:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linutronix.de header.s=2020 header.b=3Q9xpOFU; dkim=neutral (no key) header.i=@linutronix.de; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=linutronix.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245339AbjFNOHb (ORCPT <rfc822;n2h9z4@gmail.com> + 99 others); Wed, 14 Jun 2023 10:07:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36952 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233944AbjFNOHa (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Wed, 14 Jun 2023 10:07:30 -0400 Received: from galois.linutronix.de (Galois.linutronix.de [IPv6:2a0a:51c0:0:12e:550::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BCBA0CD; Wed, 14 Jun 2023 07:07:28 -0700 (PDT) From: Florian Kauer <florian.kauer@linutronix.de> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1686751646; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=EJvyE/C3PvQNTvDv0SaWnfKcEUXisJIN7Dyyhzdk0bk=; b=3Q9xpOFUIfL7l3ShdTyCf/oPmQEtVietstpFXDZcC2uxcw2CO16I3QM1SI6PtPAihPoEdQ WcSY4OWzi3pUEZylPYJ8dVld3HCtDHwoOV3yl4D+vBbq+xI1RlCBolQYjfUDGggqz64bxO /gYjusYOQcHiRgqTxI5dVqmGtvNIN0P4DfFkYjNhS7irCxcug1B5XRZElKy1oWg5j0HNIh Y84YDnr/bGYpHetH/WTZUIfR4o5AkGyL2toHMPM/xdd+Wr6wKl/1+3IBku/S5XXgT5xj4h a64dKSYV7/3Bp5Krjy5xGcMKjhNQwFDD8/S62mU0/W0H37Chyh79dDKNwyoQ8A== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1686751646; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=EJvyE/C3PvQNTvDv0SaWnfKcEUXisJIN7Dyyhzdk0bk=; b=mJ5bM/swMdWLiQBPI6q6TyY9ppPwCbZ9rstTumP66sDYj9b1FTLJZEarsSRivBST0aS3Wm YNFRVGe+ccxH+WBw== To: Jesse Brandeburg <jesse.brandeburg@intel.com>, Tony Nguyen <anthony.l.nguyen@intel.com>, Vinicius Costa Gomes <vinicius.gomes@intel.com>, "David S . Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>, Tan Tee Min <tee.min.tan@linux.intel.com>, Muhammad Husaini Zulkifli <muhammad.husaini.zulkifli@intel.com>, Aravindhan Gunasekaran <aravindhan.gunasekaran@intel.com>, Malli C <mallikarjuna.chilakala@intel.com> Cc: intel-wired-lan@lists.osuosl.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, kurt@linutronix.de, florian.kauer@linutronix.de Subject: [PATCH net-next 0/6] igc: Fix corner cases for TSN offload Date: Wed, 14 Jun 2023 16:07:08 +0200 Message-Id: <20230614140714.14443-1-florian.kauer@linutronix.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1768689719171440170?= X-GMAIL-MSGID: =?utf-8?q?1768689719171440170?= |
Series |
igc: Fix corner cases for TSN offload
|
|
Message
Florian Kauer
June 14, 2023, 2:07 p.m. UTC
The igc driver supports several different offloading capabilities relevant in the TSN context. Recent patches in this area introduced regressions for certain corner cases that are fixed in this series. Each of the patches (except the first one) addresses a different regression that can be separately reproduced. Still, they have overlapping code changes so they should not be separately applied. Especially #4 and #6 address the same observation, but both need to be applied to avoid TX hang occurrences in the scenario described in the patches. Signed-off-by: Florian Kauer <florian.kauer@linutronix.de> Reviewed-by: Kurt Kanzenbach <kurt@linutronix.de> Florian Kauer (6): igc: Rename qbv_enable to taprio_offload_enable igc: Do not enable taprio offload for invalid arguments igc: Handle already enabled taprio offload for basetime 0 igc: No strict mode in pure launchtime/CBS offload igc: Fix launchtime before start of cycle igc: Fix inserting of empty frame for launchtime drivers/net/ethernet/intel/igc/igc.h | 2 +- drivers/net/ethernet/intel/igc/igc_main.c | 24 ++++++++------------- drivers/net/ethernet/intel/igc/igc_tsn.c | 26 ++++++++++++++++++++--- 3 files changed, 33 insertions(+), 19 deletions(-)
Comments
Dear Florian, Thanks for the patch series 😊 > -----Original Message----- > From: Florian Kauer <florian.kauer@linutronix.de> > Sent: Wednesday, 14 June, 2023 10:07 PM > To: Brandeburg, Jesse <jesse.brandeburg@intel.com>; Nguyen, Anthony L > <anthony.l.nguyen@intel.com>; Gomes, Vinicius <vinicius.gomes@intel.com>; > David S . Miller <davem@davemloft.net>; Eric Dumazet > <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; Paolo Abeni > <pabeni@redhat.com>; Tan Tee Min <tee.min.tan@linux.intel.com>; Zulkifli, > Muhammad Husaini <muhammad.husaini.zulkifli@intel.com>; Gunasekaran, > Aravindhan <aravindhan.gunasekaran@intel.com>; Chilakala, Mallikarjuna > <mallikarjuna.chilakala@intel.com> > Cc: intel-wired-lan@lists.osuosl.org; netdev@vger.kernel.org; linux- > kernel@vger.kernel.org; kurt@linutronix.de; florian.kauer@linutronix.de > Subject: [PATCH net-next 0/6] igc: Fix corner cases for TSN offload > > The igc driver supports several different offloading capabilities relevant in the > TSN context. Recent patches in this area introduced regressions for certain > corner cases that are fixed in this series. > > Each of the patches (except the first one) addresses a different regression that > can be separately reproduced. Still, they have overlapping code changes so they > should not be separately applied. > > Especially #4 and #6 address the same observation, but both need to be applied > to avoid TX hang occurrences in the scenario described in the patches. > > Signed-off-by: Florian Kauer <florian.kauer@linutronix.de> > Reviewed-by: Kurt Kanzenbach <kurt@linutronix.de> > > Florian Kauer (6): > igc: Rename qbv_enable to taprio_offload_enable > igc: Do not enable taprio offload for invalid arguments > igc: Handle already enabled taprio offload for basetime 0 > igc: No strict mode in pure launchtime/CBS offload > igc: Fix launchtime before start of cycle > igc: Fix inserting of empty frame for launchtime All six patches, as far as I can see here, have the Fixes tag. Should they go to Net instead of Net-Next? > > drivers/net/ethernet/intel/igc/igc.h | 2 +- > drivers/net/ethernet/intel/igc/igc_main.c | 24 ++++++++------------- > drivers/net/ethernet/intel/igc/igc_tsn.c | 26 ++++++++++++++++++++--- > 3 files changed, 33 insertions(+), 19 deletions(-) > > -- > 2.39.2
On 16.06.23 17:53, Zulkifli, Muhammad Husaini wrote: >> Florian Kauer (6): >> igc: Rename qbv_enable to taprio_offload_enable >> igc: Do not enable taprio offload for invalid arguments >> igc: Handle already enabled taprio offload for basetime 0 >> igc: No strict mode in pure launchtime/CBS offload >> igc: Fix launchtime before start of cycle >> igc: Fix inserting of empty frame for launchtime > > All six patches, as far as I can see here, have the Fixes tag. Should they go to Net instead of Net-Next? You are correct, these are all fixes and could go to net. However, in its current form they will not fully apply to net (e.g. due to the commit 2d800bc500fb ("net/sched: taprio: replace tc_taprio_qopt_offload :: enable with a "cmd" enum") that has overlapping code changes) and are also not tested with net. If you prefer to have them in net already I could send a second series. For me personally all options (net, net-next or iwl-next) would be fine. Thanks, Florian
> -----Original Message----- > From: Florian Kauer <florian.kauer@linutronix.de> > Sent: Saturday, 17 June, 2023 12:11 AM > To: Zulkifli, Muhammad Husaini <muhammad.husaini.zulkifli@intel.com>; > Brandeburg, Jesse <jesse.brandeburg@intel.com>; Nguyen, Anthony L > <anthony.l.nguyen@intel.com>; Gomes, Vinicius <vinicius.gomes@intel.com>; > David S . Miller <davem@davemloft.net>; Eric Dumazet > <edumazet@google.com>; Jakub Kicinski <kuba@kernel.org>; Paolo Abeni > <pabeni@redhat.com>; Tan Tee Min <tee.min.tan@linux.intel.com>; > Gunasekaran, Aravindhan <aravindhan.gunasekaran@intel.com>; Chilakala, > Mallikarjuna <mallikarjuna.chilakala@intel.com> > Cc: intel-wired-lan@lists.osuosl.org; netdev@vger.kernel.org; linux- > kernel@vger.kernel.org; kurt@linutronix.de > Subject: Re: [PATCH net-next 0/6] igc: Fix corner cases for TSN offload > > On 16.06.23 17:53, Zulkifli, Muhammad Husaini wrote: > >> Florian Kauer (6): > >> igc: Rename qbv_enable to taprio_offload_enable > >> igc: Do not enable taprio offload for invalid arguments > >> igc: Handle already enabled taprio offload for basetime 0 > >> igc: No strict mode in pure launchtime/CBS offload > >> igc: Fix launchtime before start of cycle > >> igc: Fix inserting of empty frame for launchtime > > > > All six patches, as far as I can see here, have the Fixes tag. Should they go to > Net instead of Net-Next? > > You are correct, these are all fixes and could go to net. > However, in its current form they will not fully apply to net (e.g. due to the > commit 2d800bc500fb ("net/sched: taprio: replace tc_taprio_qopt_offload :: > enable with a "cmd" enum") that has overlapping code changes) and are also > not tested with net. > If you prefer to have them in net already I could send a second series. > For me personally all options (net, net-next or iwl-next) would be fine. Yeah I would prefer "net" so that it can be available in current development kernel. "Net-next" will take sometimes to go in.... Looks like only patch no 2 "igc: Do not enable taprio offload for invalid arguments" will have conflict due to the new "cmd" command introduced by vlamidir. But I think should be minor changes. Thanks > > Thanks, > Florian