Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f2f101f6 authored by Robin Murphy's avatar Robin Murphy Committed by Joerg Roedel
Browse files

iommu/amd: Fix group refcounting



If acpihid_device_group() finds an existing group for the relevant
devid, it should be taking an additional reference on that group.
Otherwise, the caller of iommu_group_get_for_dev() will inadvertently
remove the reference taken by iommu_group_add_device(), and the group
will be freed prematurely if any device is removed.

Signed-off-by: default avatarRobin Murphy <robin.murphy@arm.com>
Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
parent e1b44cbe
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -373,6 +373,8 @@ static struct iommu_group *acpihid_device_group(struct device *dev)

	if (!entry->group)
		entry->group = generic_device_group(dev);
	else
		iommu_group_ref_get(entry->group);

	return entry->group;
}