Commit b9c82a09 authored by Keqian Zhu's avatar Keqian Zhu Committed by Zheng Zengkai
Browse files

vfio/iommu_type1: Fix the logic of updating num_non_hwdbm_domains

virt inclusion
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I4WK5B


CVE: NA

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

When a newly created iommu_domain is not HWDBM capable, the vfio_iommu's
num_non_hwdbm_domains field should increase but failed to increase. This
fixes this bug.

Fixes: d2373c56 (vfio/iommu_type1: Add HWDBM status maintenance)
Signed-off-by: default avatarKeqian Zhu <zhukeqian1@huawei.com>
Tested-by: default avatarKunkun Jiang <jiangkunkun@huawei.com>
Reviewed-by: default avatarKunkun Jiang <jiangkunkun@huawei.com>
Reviewed-by: default avatarZenghui Yu <yuzenghui@huawei.com>
Signed-off-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
parent 169ae0c1
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2420,7 +2420,7 @@ static void vfio_iommu_update_hwdbm(struct vfio_iommu *iommu,
	bool num_non_hwdbm_zeroed = false;
	bool log_enabled, should_enable;

	if (old_hwdbm && !new_hwdbm && attach) {
	if ((old_hwdbm || singular) && !new_hwdbm && attach) {
		iommu->num_non_hwdbm_domains++;
	} else if (!old_hwdbm && new_hwdbm && !attach) {
		iommu->num_non_hwdbm_domains--;