Thread (13 messages) 13 messages, 3 authors, 2024-03-08

RE: [PATCH net 8/8] net: hns3: add checking for vf id of mailbox

From: Sunil Kovvuri Goutham <sgoutham@marvell.com>
Date: 2024-03-07 11:09:56
Also in: lkml

quoted hunk ↗ jump to hunk
-----Original Message-----
From: Jijie Shao <shaojijie@huawei.com>
Sent: Thursday, March 7, 2024 6:31 AM
To: yisen.zhuang@huawei.com; salil.mehta@huawei.com;
davem@davemloft.net; edumazet@google.com; kuba@kernel.org;
pabeni@redhat.com
Cc: shenjian15@huawei.com; wangjie125@huawei.com;
liuyonglong@huawei.com; shaojijie@huawei.com; netdev@vger.kernel.org;
linux-kernel@vger.kernel.org
Subject: [EXTERNAL] [PATCH net 8/8] net: hns3: add checking for vf id of
mailbox

From: Jian Shen <shenjian15@huawei.com>

Add checking for vf id of mailbox, in order to avoid array out-of-bounds risk.

Signed-off-by: Jian Shen <shenjian15@huawei.com>
Signed-off-by: Jijie Shao <shaojijie@huawei.com>
---
 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c
b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c
index 4b0d07ca2505..d4a0e0be7a72 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_mbx.c
@@ -1123,10 +1123,11 @@ void hclge_mbx_handler(struct hclge_dev
*hdev)
 		req = (struct hclge_mbx_vf_to_pf_cmd *)desc->data;

 		flag = le16_to_cpu(crq->desc[crq->next_to_use].flag);
-		if (unlikely(!hnae3_get_bit(flag,
HCLGE_CMDQ_RX_OUTVLD_B))) {
+		if (unlikely(!hnae3_get_bit(flag,
HCLGE_CMDQ_RX_OUTVLD_B) ||
+			     req->mbx_src_vfid > hdev->num_req_vfs)) {
 			dev_warn(&hdev->pdev->dev,
-				 "dropped invalid mailbox message, code =
%u\n",
-				 req->msg.code);
+				 "dropped invalid mailbox message, code =
%u, vfid = %u\n",
+				 req->msg.code, req->mbx_src_vfid);

 			/* dropping/not processing this invalid message */
 			crq->desc[crq->next_to_use].flag = 0;
--
2.30.0
Reviewed-by: Sunil Goutham <sgoutham@marvell.com>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help