Received: by 2002:ab2:710b:0:b0:1ef:a325:1205 with SMTP id z11csp1845601lql; Wed, 13 Mar 2024 09:39:17 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVaP+1+BBiBa91IJWnvA4PJT/fQc2z8+9pAjFCXXCaPm7Q99XCDDqXnGefBkGc1W31JO9ZqnfztizIly/kszN+pDx5I8wAlFxoOm+xHaw== X-Google-Smtp-Source: AGHT+IFMz/QgsMDlaTDuwPq8YzDDLMyuJXzRxUpra/DEjTHPGg/O8OGxnkTOVhjEzo3QEtK0uR/J X-Received: by 2002:ad4:5042:0:b0:690:b123:abe with SMTP id m2-20020ad45042000000b00690b1230abemr341435qvq.46.1710347957501; Wed, 13 Mar 2024 09:39:17 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1710347957; cv=pass; d=google.com; s=arc-20160816; b=FW0OmmsMkVTFZQQdvHAbsQg44lpBIM28sA+naU7a7odEa/pjpMCYjBPA0coDfsblH+ dfT1YBkYqmx2iIC7ataa2zT5H8v4g+sHJrp9ThQ2UWlr+7t7H/8HPGaKIvV6ahvmkFsg CMkUC/TkWBJ0cpo3OYHDKz3wEQOaiDVezaSnPkp/qJT2BpGUbkbdjz5XglM/dyF4BRVs +RsSDT6pj151254G4tzHnso3+TzkztlEBniX6qeiCYtrZAUBl5DOTCSJkqAuAtxfyzuM Nsf68xPw5hR8mOFxuae+cyFKcWn+P/jV0Z7OMxOFOc6v2ruXu9oN4CNJ3R+/T+f3ejtM COPA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=lxNDy3Z9W25l6pAteMiiqzwQnxBVzDcf/vmI9ATkFjE=; fh=qyPAKcwvo+tI1TSW2sqch/ligaRXkF4llKhwYQsaRM8=; b=I858Oh4CeM+P6eC0r2NpNWI0ZM5XLA1vLL3o24XX2uzAthMQbK4D7Xgfqo7F2l4N1S 1z0CfOXjor1BvEtA6vwEL/I6zDuL2OoQ2TfB41JPPZUSM3d/vvW/NJsr1ek0fKfYtntV a9QTyjDA/9M/tm99OSeSANv4jRbwWvH8EBV/wN69aaz/LIf5GuHC6ieLeXttBwqcQLFl B89pCztRRHb9bNpHWGmX1Z5NOYPDXjXcdjx/VvMS6yK/VQX2jSrei4XVYnhucCKiJj9c nlHR89qhrjaSo7WKweI+LOPTEhoYLB2kJ9vMT+gvtopKKXOKYk1wKJZV54pZh4Z9lRni mIZA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=tS0zB8kR; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-101767-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-101767-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id on6-20020a056214448600b0068fe7f88fa3si10230014qvb.499.2024.03.13.09.39.17 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Mar 2024 09:39:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-101767-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=tS0zB8kR; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-101767-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-101767-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 3AA3A1C21C9B for ; Wed, 13 Mar 2024 16:39:17 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B28B560BB9; Wed, 13 Mar 2024 16:33:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="tS0zB8kR" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CEE3760BA4; Wed, 13 Mar 2024 16:33:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710347593; cv=none; b=N9vHnKwHltCp/1Pv02iz92iaQmzXSK6YL1O41Gu2JQmT47COIjyClGeeL2hRXzn3OtoeDxnkuuYtZvI4uF0D9dp8THne1/GOWmJm3CjSOogHIovTPZeRoP7NJhZRiMijT4vYo426D2/Y6ibdKIfHfRJvuP/+QGwKgcDKcUsCVEw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710347593; c=relaxed/simple; bh=LJ9Nag5joMHCRUdU2t4IyXLRCogu7QaDdQULBSXRXzQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lojz4tWS/vBpmb+zgp70Jt9DLrAnFMmP+h9lL9K9GpK+vgWx1Wo3JQRgc2e2eDpX/He9guYtvkH2hL8y6dqB3LX20d3ZIcYSJvNnTEdNiOVHW5/Nh3xE2nFfNTn4RAA2Tq48LwR4BmZ93U5pbHjt6Ld8DhIz1rx0/LkN7e6g0z4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=tS0zB8kR; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0FD02C43601; Wed, 13 Mar 2024 16:33:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1710347593; bh=LJ9Nag5joMHCRUdU2t4IyXLRCogu7QaDdQULBSXRXzQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tS0zB8kRrITskqrqeyOAniTSTWOLuIm30l6of51rfVAbgMnQ24kDKqUW6VmspysgM Z4XfNHDSBEw6HMfyV2VVRHqKanT7YuAflVhDWZqdgARUL0haydAxG6bMa/6vZ3n0PC aFvx1PNcBqkRKft0waiuSWaNebCOjDkQYf9/U9yL+y3OoG5eDOofGVJLyRIYSAywlt HtU1RWdNjkWPv1MsC5PcPQFGIOJls7GU1x61rwYHqeReUUT+21PCuC8yUh/YnCL4b/ P0ojx6xOODsfX08pC8tOETmbJcS6RFV30gnpNOAZ187GaZ/X7pCpe81c2g5K5zxRGD SqMoU/Gfa6K7A== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Emil Tantilov , Jesse Brandeburg , Przemek Kitszel , Alan Brady , Simon Horman , Krishneil Singh , Tony Nguyen , Sasha Levin Subject: [PATCH 6.7 28/61] idpf: disable local BH when scheduling napi for marker packets Date: Wed, 13 Mar 2024 12:32:03 -0400 Message-ID: <20240313163236.613880-29-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240313163236.613880-1-sashal@kernel.org> References: <20240313163236.613880-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-KernelTest-Patch: http://kernel.org/pub/linux/kernel/v6.x/stable-review/patch-6.7.10-rc1.gz X-KernelTest-Tree: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git X-KernelTest-Branch: linux-6.7.y X-KernelTest-Patches: git://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git X-KernelTest-Version: 6.7.10-rc1 X-KernelTest-Deadline: 2024-03-15T16:32+00:00 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit From: Emil Tantilov [ Upstream commit 330068589389ccae3452db15ecacc3e147ac9c1c ] Fix softirq's not being handled during napi_schedule() call when receiving marker packets for queue disable by disabling local bottom half. The issue can be seen on ifdown: NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #08!!! Using ftrace to catch the failing scenario: ifconfig [003] d.... 22739.830624: softirq_raise: vec=3 [action=NET_RX] -0 [003] ..s.. 22739.831357: softirq_entry: vec=3 [action=NET_RX] No interrupt and CPU is idle. After the patch when disabling local BH before calling napi_schedule: ifconfig [003] d.... 22993.928336: softirq_raise: vec=3 [action=NET_RX] ifconfig [003] ..s1. 22993.928337: softirq_entry: vec=3 [action=NET_RX] Fixes: c2d548cad150 ("idpf: add TX splitq napi poll support") Reviewed-by: Jesse Brandeburg Reviewed-by: Przemek Kitszel Signed-off-by: Emil Tantilov Signed-off-by: Alan Brady Reviewed-by: Simon Horman Tested-by: Krishneil Singh Signed-off-by: Tony Nguyen Signed-off-by: Sasha Levin --- drivers/net/ethernet/intel/idpf/idpf_virtchnl.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c index 2c1b051fdc0d4..b0c52f17848f6 100644 --- a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c +++ b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c @@ -2087,8 +2087,10 @@ int idpf_send_disable_queues_msg(struct idpf_vport *vport) set_bit(__IDPF_Q_POLL_MODE, vport->txqs[i]->flags); /* schedule the napi to receive all the marker packets */ + local_bh_disable(); for (i = 0; i < vport->num_q_vectors; i++) napi_schedule(&vport->q_vectors[i].napi); + local_bh_enable(); return idpf_wait_for_marker_event(vport); } -- 2.43.0