diff mbox series

[1/2] ALSA: hda/tas2781: Fix acpi device refcount leak at tas2781_read_acpi()

Message ID 20230820172635.22236-1-tiwai@suse.de (mailing list archive)
State Accepted
Commit 1c80cc055b3f9fb72606d58c27eb2486c4b919a7
Headers show
Series [1/2] ALSA: hda/tas2781: Fix acpi device refcount leak at tas2781_read_acpi() | expand

Commit Message

Takashi Iwai Aug. 20, 2023, 5:26 p.m. UTC
The error path at tas2781_read_acpi() doesn't release the acpi_device
adev but releases another device physdev instead.  This results in a
refcount leak.  Fix it by replacing with the right object.

Fixes: 5be27f1e3ec9 ("ALSA: hda/tas2781: Add tas2781 HDA driver")
Reported-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Closes: https://lore.kernel.org/r/9f910785-e856-1539-e3e4-c9817af5fe67@linux.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 sound/pci/hda/tas2781_hda_i2c.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/sound/pci/hda/tas2781_hda_i2c.c b/sound/pci/hda/tas2781_hda_i2c.c
index 35dafc4aec4f..0968ae915fd0 100644
--- a/sound/pci/hda/tas2781_hda_i2c.c
+++ b/sound/pci/hda/tas2781_hda_i2c.c
@@ -118,7 +118,7 @@  static int tas2781_read_acpi(struct tasdevice_priv *p, const char *hid)
 
 err:
 	dev_err(p->dev, "read acpi error, ret: %d\n", ret);
-	put_device(physdev);
+	acpi_dev_put(adev);
 
 	return ret;
 }