All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Niels Dossche <dossche.niels@gmail.com>,
	Martin Habets <habetsm.xilinx@gmail.com>,
	"David S . Miller" <davem@davemloft.net>,
	Sasha Levin <sashal@kernel.org>,
	ecree.xilinx@gmail.com, kuba@kernel.org, netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 5.15 22/24] sfc: extend the locking on mcdi->seqno
Date: Wed,  9 Mar 2022 11:19:41 -0500	[thread overview]
Message-ID: <20220309161946.136122-22-sashal@kernel.org> (raw)
In-Reply-To: <20220309161946.136122-1-sashal@kernel.org>

From: Niels Dossche <dossche.niels@gmail.com>

[ Upstream commit f1fb205efb0ccca55626fd4ef38570dd16b44719 ]

seqno could be read as a stale value outside of the lock. The lock is
already acquired to protect the modification of seqno against a possible
race condition. Place the reading of this value also inside this locking
to protect it against a possible race condition.

Signed-off-by: Niels Dossche <dossche.niels@gmail.com>
Acked-by: Martin Habets <habetsm.xilinx@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/ethernet/sfc/mcdi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/sfc/mcdi.c b/drivers/net/ethernet/sfc/mcdi.c
index be6bfd6b7ec7..50baf62b2cbc 100644
--- a/drivers/net/ethernet/sfc/mcdi.c
+++ b/drivers/net/ethernet/sfc/mcdi.c
@@ -163,9 +163,9 @@ static void efx_mcdi_send_request(struct efx_nic *efx, unsigned cmd,
 	/* Serialise with efx_mcdi_ev_cpl() and efx_mcdi_ev_death() */
 	spin_lock_bh(&mcdi->iface_lock);
 	++mcdi->seqno;
+	seqno = mcdi->seqno & SEQ_MASK;
 	spin_unlock_bh(&mcdi->iface_lock);
 
-	seqno = mcdi->seqno & SEQ_MASK;
 	xflags = 0;
 	if (mcdi->mode == MCDI_MODE_EVENTS)
 		xflags |= MCDI_HEADER_XFLAGS_EVREQ;
-- 
2.34.1


  parent reply	other threads:[~2022-03-09 16:32 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-09 16:19 [PATCH AUTOSEL 5.15 01/24] arm64: dts: rockchip: fix rk3399-puma-haikou USB OTG mode Sasha Levin
2022-03-09 16:19 ` Sasha Levin
2022-03-09 16:19 ` Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 02/24] xfrm: Check if_id in xfrm_migrate Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 03/24] xfrm: Fix xfrm migrate issues when address family changes Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 04/24] arm64: dts: rockchip: fix rk3399-puma eMMC HS400 signal integrity Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 05/24] arm64: dts: rockchip: align pl330 node name with dtschema Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 06/24] arm64: dts: rockchip: reorder rk3399 hdmi clocks Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 07/24] arm64: dts: agilex: use the compatible "intel,socfpga-agilex-hsotg" Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 08/24] ARM: dts: rockchip: reorder rk322x hmdi clocks Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 09/24] ARM: dts: rockchip: fix a typo on rk3288 crypto-controller Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 10/24] mac80211: refuse aggregations sessions before authorized Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 11/24] MIPS: smp: fill in sibling and core maps earlier Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 12/24] ARM: 9178/1: fix unmet dependency on BITREVERSE for HAVE_ARCH_BITREVERSE Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 13/24] Bluetooth: hci_core: Fix leaking sent_cmd skb Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 14/24] can: rcar_canfd: rcar_canfd_channel_probe(): register the CAN device when fully ready Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 15/24] net: sparx5: Add #include to remove warning Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 16/24] atm: firestream: check the return value of ioremap() in fs_init() Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 17/24] Input: goodix - workaround Cherry Trail devices with a bogus ACPI Interrupt() resource Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 18/24] iwlwifi: don't advertise TWT support Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 19/24] drm/vrr: Set VRR capable prop only if it is attached to connector Sasha Levin
2022-03-09 16:19   ` Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 20/24] nl80211: Update bss channel on channel switch for P2P_CLIENT Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 21/24] tcp: make tcp_read_sock() more robust Sasha Levin
2022-03-09 16:19 ` Sasha Levin [this message]
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 23/24] bnx2: Fix an error message Sasha Levin
2022-03-09 16:19 ` [PATCH AUTOSEL 5.15 24/24] kselftest/vm: fix tests build with old libc Sasha Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220309161946.136122-22-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=davem@davemloft.net \
    --cc=dossche.niels@gmail.com \
    --cc=ecree.xilinx@gmail.com \
    --cc=habetsm.xilinx@gmail.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.