Commit a132be50 authored by Yihang Li's avatar Yihang Li Committed by JiangShui
Browse files

scsi: hisi_sas: Replace with standard error code return value

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


CVE: NA

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

In function hisi_sas_controller_prereset(), -ENOSYS (Function not
implemented) should be returned if the driver does not support .soft_reset.
Returns -EPERM (Operation not permitted) if HISI_SAS_RESETTING_BIT is
already be set.

In function _suspend_v3_hw(), returns -EPERM (Operation not permitted) if
HISI_SAS_RESETTING_BIT is already be set.

Fixes: 4522204a ("scsi: hisi_sas: tidy host controller reset function a bit")
Signed-off-by: default avatarYihang Li <liyihang9@huawei.com>
Signed-off-by: default avatarXiang Chen <chenxiang66@hisilicon.com>
Signed-off-by: default avatarxiabing <xiabing12@h-partners.com>
parent 159df073
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1664,12 +1664,12 @@ EXPORT_SYMBOL_GPL(hisi_sas_controller_reset_done);
static int hisi_sas_controller_prereset(struct hisi_hba *hisi_hba)
{
	if (!hisi_hba->hw->soft_reset)
		return -1;
		return -ENOENT;

	down(&hisi_hba->sem);
	if (test_and_set_bit(HISI_SAS_RESET_BIT, &hisi_hba->flags)) {
		up(&hisi_hba->sem);
		return -1;
		return -EPERM;
	}

	if (hisi_sas_debugfs_enable)
+1 −1
Original line number Diff line number Diff line
@@ -5092,7 +5092,7 @@ static int _suspend_v3_hw(struct device *device)
	}

	if (test_and_set_bit(HISI_SAS_RESET_BIT, &hisi_hba->flags))
		return -1;
		return -EPERM;

	dev_warn(dev, "entering suspend state\n");