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 235BE43345 for ; Thu, 16 Nov 2023 14:24:22 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1D137402DD; Thu, 16 Nov 2023 14:24:22 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mails.dpdk.org (Postfix) with ESMTP id 244E1406B4 for ; Thu, 16 Nov 2023 14:24:20 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1700141059; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=v4e7KAnQWO+fkO/a9UZyS67SooR186t+s+PCfU06VuY=; b=jKvadmGB9uNVwllaazF1t3JCGK9yezonfHb6t3v0DnJdu2zm1qIgbTCJ/U77cU/nq41WQf j+MSkAHAfKCIkd49NuekhB8J0L6nr+ti5NoanLYQWxEN7W7lKeUzFuKr/uKtWq8aIVNw2K 69atozzexkxX3ivHSlJMXJtI7dvzupM= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-49-6fNHvqN0ObSOf7ioiW0vQA-1; Thu, 16 Nov 2023 08:24:16 -0500 X-MC-Unique: 6fNHvqN0ObSOf7ioiW0vQA-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.rdu2.redhat.com [10.11.54.6]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 4889182A668; Thu, 16 Nov 2023 13:24:16 +0000 (UTC) Received: from rh.Home (unknown [10.39.194.169]) by smtp.corp.redhat.com (Postfix) with ESMTP id 880672166B27; Thu, 16 Nov 2023 13:24:15 +0000 (UTC) From: Kevin Traynor To: Dengdui Huang Cc: dpdk stable Subject: patch 'net/hns3: fix double stats for IMP and global reset' has been queued to stable release 21.11.6 Date: Thu, 16 Nov 2023 13:22:55 +0000 Message-ID: <20231116132348.557257-13-ktraynor@redhat.com> In-Reply-To: <20231116132348.557257-1-ktraynor@redhat.com> References: <20231116132348.557257-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.6 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII"; x-default=true X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 21.11.6 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 11/21/23. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable/commit/efe611f1c844bff1115d00f17fb0c1f001db8d5e Thanks. Kevin --- >From efe611f1c844bff1115d00f17fb0c1f001db8d5e Mon Sep 17 00:00:00 2001 From: Dengdui Huang Date: Fri, 27 Oct 2023 14:09:42 +0800 Subject: [PATCH] net/hns3: fix double stats for IMP and global reset [ upstream commit c48e74370c5eafbe8db5c826a797344e4fdf8f49 ] There is a stats counter for IMP and global reset in PF driver. hns3 driver has two following task to detect reset event: (1) interrupt handled task(A): triggered by interrupt and detect which reset level. And the reset service will be executed after 10us. (2) polling task(B): scan reset source register to detect if driver has to do reset. And the reset service will be executed after deferred 3s. They'll both count the number of one reset plus 1. Task(A) adds it before doing the reset service. And in the reset service, task(B) adds it if hw->reset.schedule is 'SCHEDULE_REQUESTED'. Normally, this reset counter is just added by 1 once. Unfortunately, this counter is added by 2 in the following case: 1. Task(B) detect the reset event, like IMP. hw->reset.schedule is set to 'SCHEDULE_REQUESTED'. 2. Task(A) is just triggered before running the reset service of task(B). Note: the reset counter is added by 1 at this moment before running the reset service of task(A). Additionally, the reset service of task(B) is canceled in task(A) because of schedule status being 'SCHEDULE_REQUESTED'. 3. Then the reset service of task(A) is executed at last. Note: The reset counter is added by 1 again in this step because of schedule status still being 'SCHEDULE_REQUESTED'. So this patch fix it by setting the scheduling status to 'SCHEDULE_REQUESTED' in step 2. Fixes: 2790c6464725 ("net/hns3: support device reset") Signed-off-by: Dengdui Huang --- drivers/net/hns3/hns3_intr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/hns3/hns3_intr.c b/drivers/net/hns3/hns3_intr.c index 66dc509086..67a4b9b221 100644 --- a/drivers/net/hns3/hns3_intr.c +++ b/drivers/net/hns3/hns3_intr.c @@ -2420,6 +2420,6 @@ hns3_schedule_reset(struct hns3_adapter *hns) SCHEDULE_DEFERRED) rte_eal_alarm_cancel(hw->reset.ops->reset_service, hns); - else - __atomic_store_n(&hw->reset.schedule, SCHEDULE_REQUESTED, + + __atomic_store_n(&hw->reset.schedule, SCHEDULE_REQUESTED, __ATOMIC_RELAXED); -- 2.41.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2023-11-16 13:21:52.888342846 +0000 +++ 0013-net-hns3-fix-double-stats-for-IMP-and-global-reset.patch 2023-11-16 13:21:52.415946273 +0000 @@ -1 +1 @@ -From c48e74370c5eafbe8db5c826a797344e4fdf8f49 Mon Sep 17 00:00:00 2001 +From efe611f1c844bff1115d00f17fb0c1f001db8d5e Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit c48e74370c5eafbe8db5c826a797344e4fdf8f49 ] + @@ -35 +36,0 @@ -Cc: stable@dpdk.org @@ -43 +44 @@ -index 44a1119415..baf5f58e9e 100644 +index 66dc509086..67a4b9b221 100644 @@ -46 +47 @@ -@@ -2435,6 +2435,6 @@ hns3_schedule_reset(struct hns3_adapter *hns) +@@ -2420,6 +2420,6 @@ hns3_schedule_reset(struct hns3_adapter *hns)