Commit d403120c authored by Kurt Borja's avatar Kurt Borja Committed by Rafael J. Wysocki
Browse files

ACPI: platform_profile: Fix memory leak in profile_class_is_visible()



If class_find_device() finds a device, it's reference count is
incremented.

Call put_device() to drop this reference before returning.

Fixes: 77be5cac ("ACPI: platform_profile: Create class for ACPI platform profile")
Signed-off-by: default avatarKurt Borja <kuurtb@gmail.com>
Reviewed-by: default avatarMark Pearson <mpearson-lenovo@squebb.ca>
Link: https://patch.msgid.link/20250212193058.32110-1-kuurtb@gmail.com


Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 0ad2507d
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -417,8 +417,14 @@ static int profile_class_registered(struct device *dev, const void *data)

static umode_t profile_class_is_visible(struct kobject *kobj, struct attribute *attr, int idx)
{
	if (!class_find_device(&platform_profile_class, NULL, NULL, profile_class_registered))
	struct device *dev;

	dev = class_find_device(&platform_profile_class, NULL, NULL, profile_class_registered);
	if (!dev)
		return 0;

	put_device(dev);

	return attr->mode;
}