mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-10 12:57:06 +09:00
x86/amd-iommu: Fix deassignment of a device from the pt_domain
commit d3ad9373b7 upstream.
Deassigning a device from the passthrough domain does not
work and breaks device assignment to kvm guests. This patch
fixes the issue.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
16ecf8a237
commit
314a4e5441
@@ -1230,9 +1230,10 @@ static void __detach_device(struct protection_domain *domain, u16 devid)
|
||||
|
||||
/*
|
||||
* If we run in passthrough mode the device must be assigned to the
|
||||
* passthrough domain if it is detached from any other domain
|
||||
* passthrough domain if it is detached from any other domain.
|
||||
* Make sure we can deassign from the pt_domain itself.
|
||||
*/
|
||||
if (iommu_pass_through) {
|
||||
if (iommu_pass_through && domain != pt_domain) {
|
||||
struct amd_iommu *iommu = amd_iommu_rlookup_table[devid];
|
||||
__attach_device(iommu, pt_domain, devid);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user