diff options
author | Takashi Iwai <tiwai@suse.de> | 2023-07-17 08:25:55 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2023-07-17 08:26:15 +0200 |
commit | 057849ccc3d898b8a2dc21933b50ed8fbddc963b (patch) | |
tree | f2af64693ba90bc02c60df9de1bd6d1ddd5c50e5 /sound | |
parent | b2cb84d7802b75bc4029519bce2c4e0c9319ac42 (diff) |
ALSA: seq: Fix memory leak at error path in snd_seq_create_port()
We forgot to release a newly allocated item at the error path in
snd_seq_create_port(). This patch fixes it.
Fixes: 7c3f0d3d3a11 ("ALSA: seq: Check the conflicting port at port creation")
Reported-by: syzbot+cf8e7fa4eeec59b3d485@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/r/00000000000098ed3a0600965f89@google.com
Link: https://lore.kernel.org/r/20230717062555.31592-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/core/seq/seq_ports.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/core/seq/seq_ports.c b/sound/core/seq/seq_ports.c index 9b80f8275026..f3f14ff0f80f 100644 --- a/sound/core/seq/seq_ports.c +++ b/sound/core/seq/seq_ports.c @@ -149,6 +149,7 @@ int snd_seq_create_port(struct snd_seq_client *client, int port, write_lock_irq(&client->ports_lock); list_for_each_entry(p, &client->ports_list_head, list) { if (p->addr.port == port) { + kfree(new_port); num = -EBUSY; goto unlock; } |