Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp644013ybz; Wed, 22 Apr 2020 05:22:38 -0700 (PDT) X-Google-Smtp-Source: APiQypIDlnneyKlkSaaNvM+ryGMEzMvBcZR1rKBkwvTPobMbxhJ+d6XjzpTlc2e8URWe+g0H6flT X-Received: by 2002:a05:6402:b47:: with SMTP id bx7mr22128472edb.374.1587558158506; Wed, 22 Apr 2020 05:22:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587558158; cv=none; d=google.com; s=arc-20160816; b=X/LpYxv4Laog0Cjluj+TK55Y2KSe9412edPaZT1MHksFobeVsvVZbIrJtg+t6W/iNk CKolSY+P8BmmLMDQhhtcLnjkBQaosHO+HAev2EUkU7sosLzQtWslQlU6jLM/cpKn7UMN 1abZH8JbeCFLyoWsqCRwijNF3jly/rjan2g+8Ao0Q0YjRN449nJ4J/fh11cDZ/Mf/Q4b BfHGXPK8sM5rF+t0Wfc82qOcCNJM9bSoNb2U+X/BiewzdvolNsHqxnHiuT8jg7qZKHB9 eVzlZv1ETg3KdLMS4jiFD85GHLFb/SsZlpjDN9fdI6Y95S0j7WxxlSybDmP2ky1t9+1P mvJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=6H52Zk80kyXjjYpDkK0V0tnOsOLzgYTp7JwAZruXnB0=; b=S4VxORlG3elPVW7vdNdeCFB7f4Mz2c+tDh50Goq99/KrZsNzuduk4ZQCSmxDnf+a7x vwBSKneru8XGPHSgIlta6Iruxk8Dwou5hk+2kP79SaJwTy5T+o8inoW674iXnp1W38jp fyOuWbOwyvc6QVeydfjZI9LjnzcToduGxdYCHgAwsMEUerq/nqShaEM73StxwMsXtDy6 SdHpE1hLOSSoffpkM+uO9M8MuoreCs8j03fmqbkSwRjgKpH/woYjzouMumi83jPF5XUo N6ioYZU3wMzwYIKMo/8lIqHB4JsvVwlbkUtYhpOs+Yi82y4m56Ih6tC6K136bi6UdGqs 8R4A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=YEVPxg7y; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m13si3610857ejc.7.2020.04.22.05.22.15; Wed, 22 Apr 2020 05:22:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=YEVPxg7y; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726018AbgDVKNj (ORCPT + 99 others); Wed, 22 Apr 2020 06:13:39 -0400 Received: from mail.kernel.org ([198.145.29.99]:47416 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728657AbgDVKN2 (ORCPT ); Wed, 22 Apr 2020 06:13:28 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id DDBCB2070B; Wed, 22 Apr 2020 10:13:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1587550408; bh=PMPsZAyKkO1vYVopSB3WRyEZCJka8hrgwZwx7kCYqug=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=YEVPxg7ypOKwDjda62uh9irBXFHWCmPGLv8wVnHr9f3tV4G0wl0f2HaquZXXO0wuq 4wPgwaVeSoB02f5ampB+YstHv350Bic3dm6K9RRYebm8Q8ZWvz0DlFncallf0sXHnh mXMfWD9rzB4u+753J+aInTJTnjdNw/Om+AFhBeeo= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Sebastian Andrzej Siewior , Tom Lendacky , "David S. Miller" Subject: [PATCH 4.14 106/199] amd-xgbe: Use __napi_schedule() in BH context Date: Wed, 22 Apr 2020 11:57:12 +0200 Message-Id: <20200422095108.379952068@linuxfoundation.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200422095057.806111593@linuxfoundation.org> References: <20200422095057.806111593@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Sebastian Andrzej Siewior [ Upstream commit d518691cbd3be3dae218e05cca3f3fc9b2f1aa77 ] The driver uses __napi_schedule_irqoff() which is fine as long as it is invoked with disabled interrupts by everybody. Since the commit mentioned below the driver may invoke xgbe_isr_task() in tasklet/softirq context. This may lead to list corruption if another driver uses __napi_schedule_irqoff() in IRQ context. Use __napi_schedule() which safe to use from IRQ and softirq context. Fixes: 85b85c853401d ("amd-xgbe: Re-issue interrupt if interrupt status not cleared") Signed-off-by: Sebastian Andrzej Siewior Acked-by: Tom Lendacky Cc: Tom Lendacky Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/amd/xgbe/xgbe-drv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/net/ethernet/amd/xgbe/xgbe-drv.c +++ b/drivers/net/ethernet/amd/xgbe/xgbe-drv.c @@ -515,7 +515,7 @@ static void xgbe_isr_task(unsigned long xgbe_disable_rx_tx_ints(pdata); /* Turn on polling */ - __napi_schedule_irqoff(&pdata->napi); + __napi_schedule(&pdata->napi); } } else { /* Don't clear Rx/Tx status if doing per channel DMA