diff options
author | John Garry <john.garry@huawei.com> | 2016-11-07 20:48:39 +0800 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2016-11-25 09:54:40 -0500 |
commit | f696cc32b5984eb73f6b1ff81929ca9e5ea22d6d (patch) | |
tree | 387bef15e11b8bd3ea913f6983596de20cf22298 /drivers/scsi/hisi_sas/hisi_sas.h | |
parent | scsi: hisi_sas: check SATA FIS when directly attaching SATA device (diff) | |
download | linux-dev-f696cc32b5984eb73f6b1ff81929ca9e5ea22d6d.tar.xz linux-dev-f696cc32b5984eb73f6b1ff81929ca9e5ea22d6d.zip |
scsi: hisi_sas: use atomic64_t for hisi_sas_device.running_req
Sometimes the value of hisi_sas_device.running_req
would go negative unless we have the check for
running_req >= 0 before trying to decrement.
This is because using running_req is not thread-safe.
As such, the value for running_req may be actually incorrect,
so use atomic64_t instead.
Signed-off-by: John Garry <john.garry@huawei.com>
Reviewed-by: Xiang Chen <chenxiang66@hisilicon.com>
Reviewed-by: Zhangfei Gao <zhangfei.gao@linaro.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/hisi_sas/hisi_sas.h')
-rw-r--r-- | drivers/scsi/hisi_sas/hisi_sas.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/hisi_sas/hisi_sas.h b/drivers/scsi/hisi_sas/hisi_sas.h index bf59fab77765..8b5ecc697fee 100644 --- a/drivers/scsi/hisi_sas/hisi_sas.h +++ b/drivers/scsi/hisi_sas/hisi_sas.h @@ -111,7 +111,7 @@ struct hisi_sas_device { struct domain_device *sas_device; u64 attached_phy; u64 device_id; - u64 running_req; + atomic64_t running_req; u8 dev_status; }; |