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: 77be5cacb2
("ACPI: platform_profile: Create class for ACPI platform profile")
Signed-off-by: Kurt Borja <kuurtb@gmail.com>
Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca>
Link: https://patch.msgid.link/20250212193058.32110-1-kuurtb@gmail.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
0ad2507d5d
commit
d403120cb9
1 changed files with 7 additions and 1 deletions
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue