Commit 7319a24d authored by Yonglong Liu's avatar Yonglong Liu Committed by Jiantao Xiao
Browse files

net: hns3: fix kernel crash when devlink reload during pf initialization

driver inclusion
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I8MWM5


CVE: NA

----------------------------------------------------------------------

The devlink reload process will access the hardware resources,
but the register operation is before the hardware initialize
done, so, if process the devlink reload during initializetion,
may lead the kernel crash. This patch check whether the NIC is
initialized to fix the problem.

Fixes: 2cd7213c ("net: hns3: add support for registering devlink for PF")
Signed-off-by: default avatarYonglong Liu <liuyonglong@huawei.com>
parent 45a97879
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -82,8 +82,9 @@ static int hclge_devlink_reload_down(struct devlink *devlink, bool netns_change,
	struct pci_dev *pdev = hdev->pdev;
	int ret;

	if (test_bit(HCLGE_STATE_RST_HANDLING, &hdev->state)) {
		dev_err(&pdev->dev, "reset is handling\n");
	if (test_bit(HCLGE_STATE_RST_HANDLING, &hdev->state) ||
	    !test_bit(HCLGE_STATE_NIC_REGISTERED, &hdev->state)) {
		dev_err(&pdev->dev, "reset is handling or driver removed\n");
		return -EBUSY;
	}