From: Brian Vazquez <brianvv@google.com>
To: Brian Vazquez <brianvv.kernel@gmail.com>,
Tony Nguyen <anthony.l.nguyen@intel.com>,
Przemek Kitszel <przemyslaw.kitszel@intel.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
intel-wired-lan@lists.osuosl.org
Cc: David Decotigny <decot@google.com>,
Vivek Kumar <vivekmr@google.com>,
Anjali Singhai <anjali.singhai@intel.com>,
Sridhar Samudrala <sridhar.samudrala@intel.com>,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
emil.s.tantilov@intel.com,
Manoj Vishwanathan <manojvishy@google.com>,
Brian Vazquez <brianvv@google.com>,
Jacob Keller <jacob.e.keller@intel.com>,
Pavan Kumar Linga <pavan.kumar.linga@intel.com>
Subject: [Intel-wired-lan] [iwl-next PATCH v3 1/3] idpf: Acquire the lock before accessing the xn->salt
Date: Thu, 12 Dec 2024 23:33:31 +0000 [thread overview]
Message-ID: <20241212233333.3743239-2-brianvv@google.com> (raw)
In-Reply-To: <20241212233333.3743239-1-brianvv@google.com>
From: Manoj Vishwanathan <manojvishy@google.com>
The transaction salt was being accessed before acquiring the
idpf_vc_xn_lock when idpf has to forward the virtchnl reply.
Fixes: 34c21fa894a1 ("idpf: implement virtchnl transaction manager")
Signed-off-by: Manoj Vishwanathan <manojvishy@google.com>
Signed-off-by: David Decotigny <decot@google.com>
Signed-off-by: Brian Vazquez <brianvv@google.com>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Reviewed-by: Pavan Kumar Linga <pavan.kumar.linga@intel.com>
---
drivers/net/ethernet/intel/idpf/idpf_virtchnl.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
index d46c95f91b0d..13274544f7f4 100644
--- a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
+++ b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
@@ -612,14 +612,15 @@ idpf_vc_xn_forward_reply(struct idpf_adapter *adapter,
return -EINVAL;
}
xn = &adapter->vcxn_mngr->ring[xn_idx];
+ idpf_vc_xn_lock(xn);
salt = FIELD_GET(IDPF_VC_XN_SALT_M, msg_info);
if (xn->salt != salt) {
dev_err_ratelimited(&adapter->pdev->dev, "Transaction salt does not match (%02x != %02x)\n",
xn->salt, salt);
+ idpf_vc_xn_unlock(xn);
return -EINVAL;
}
- idpf_vc_xn_lock(xn);
switch (xn->state) {
case IDPF_VC_XN_WAITING:
/* success */
--
2.47.1.613.gc27f4b7a9f-goog
WARNING: multiple messages have this Message-ID (diff)
From: Brian Vazquez <brianvv@google.com>
To: Brian Vazquez <brianvv.kernel@gmail.com>,
Tony Nguyen <anthony.l.nguyen@intel.com>,
Przemek Kitszel <przemyslaw.kitszel@intel.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
intel-wired-lan@lists.osuosl.org
Cc: David Decotigny <decot@google.com>,
Vivek Kumar <vivekmr@google.com>,
Anjali Singhai <anjali.singhai@intel.com>,
Sridhar Samudrala <sridhar.samudrala@intel.com>,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
emil.s.tantilov@intel.com,
Manoj Vishwanathan <manojvishy@google.com>,
Brian Vazquez <brianvv@google.com>,
Jacob Keller <jacob.e.keller@intel.com>,
Pavan Kumar Linga <pavan.kumar.linga@intel.com>
Subject: [iwl-next PATCH v3 1/3] idpf: Acquire the lock before accessing the xn->salt
Date: Thu, 12 Dec 2024 23:33:31 +0000 [thread overview]
Message-ID: <20241212233333.3743239-2-brianvv@google.com> (raw)
In-Reply-To: <20241212233333.3743239-1-brianvv@google.com>
From: Manoj Vishwanathan <manojvishy@google.com>
The transaction salt was being accessed before acquiring the
idpf_vc_xn_lock when idpf has to forward the virtchnl reply.
Fixes: 34c21fa894a1 ("idpf: implement virtchnl transaction manager")
Signed-off-by: Manoj Vishwanathan <manojvishy@google.com>
Signed-off-by: David Decotigny <decot@google.com>
Signed-off-by: Brian Vazquez <brianvv@google.com>
Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>
Reviewed-by: Pavan Kumar Linga <pavan.kumar.linga@intel.com>
---
drivers/net/ethernet/intel/idpf/idpf_virtchnl.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
index d46c95f91b0d..13274544f7f4 100644
--- a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
+++ b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c
@@ -612,14 +612,15 @@ idpf_vc_xn_forward_reply(struct idpf_adapter *adapter,
return -EINVAL;
}
xn = &adapter->vcxn_mngr->ring[xn_idx];
+ idpf_vc_xn_lock(xn);
salt = FIELD_GET(IDPF_VC_XN_SALT_M, msg_info);
if (xn->salt != salt) {
dev_err_ratelimited(&adapter->pdev->dev, "Transaction salt does not match (%02x != %02x)\n",
xn->salt, salt);
+ idpf_vc_xn_unlock(xn);
return -EINVAL;
}
- idpf_vc_xn_lock(xn);
switch (xn->state) {
case IDPF_VC_XN_WAITING:
/* success */
--
2.47.1.613.gc27f4b7a9f-goog
next prev parent reply other threads:[~2024-12-12 23:43 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-12 23:33 [Intel-wired-lan] [iwl-next PATCH v3 0/3] IDPF Virtchnl: Enhance error reporting & fix locking/workqueue issues Brian Vazquez
2024-12-12 23:33 ` Brian Vazquez
2024-12-12 23:33 ` Brian Vazquez [this message]
2024-12-12 23:33 ` [iwl-next PATCH v3 1/3] idpf: Acquire the lock before accessing the xn->salt Brian Vazquez
2024-12-12 23:33 ` [Intel-wired-lan] [iwl-next PATCH v3 2/3] idpf: convert workqueues to unbound Brian Vazquez
2024-12-12 23:33 ` Brian Vazquez
2024-12-13 12:36 ` Hillf Danton
2024-12-16 16:35 ` Brian Vazquez
2024-12-12 23:33 ` [Intel-wired-lan] [iwl-next PATCH v3 3/3] idpf: add more info during virtchnl transaction time out Brian Vazquez
2024-12-12 23:33 ` Brian Vazquez
2024-12-13 9:36 ` [Intel-wired-lan] " Paul Menzel
2024-12-16 16:25 ` Brian Vazquez
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=20241212233333.3743239-2-brianvv@google.com \
--to=brianvv@google.com \
--cc=anjali.singhai@intel.com \
--cc=anthony.l.nguyen@intel.com \
--cc=brianvv.kernel@gmail.com \
--cc=davem@davemloft.net \
--cc=decot@google.com \
--cc=edumazet@google.com \
--cc=emil.s.tantilov@intel.com \
--cc=intel-wired-lan@lists.osuosl.org \
--cc=jacob.e.keller@intel.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=manojvishy@google.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=pavan.kumar.linga@intel.com \
--cc=przemyslaw.kitszel@intel.com \
--cc=sridhar.samudrala@intel.com \
--cc=vivekmr@google.com \
/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.