Message ID | 63ac20f64234b7c9ea87a7fa9baf41e8255852f7.1727374631.git.christophe.jaillet@wanadoo.fr (mailing list archive) |
---|---|
State | Accepted |
Commit | 368e4663c557de4a33f321b44e7eeec0a21b2e4e |
Headers | show |
Series | ALSA: mixer_oss: Remove some incorrect kfree_const() usages | expand |
On Thu, 26 Sep 2024 20:17:36 +0200, Christophe JAILLET wrote: > > "assigned" and "assigned->name" are allocated in snd_mixer_oss_proc_write() > using kmalloc() and kstrdup(), so there is no point in using kfree_const() > to free these resources. > > Switch to the more standard kfree() to free these resources. > > This could avoid a memory leak. > > Fixes: 454f5ec1d2b7 ("ALSA: mixer: oss: Constify snd_mixer_oss_assign_table definition") > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Applied now. Thanks. Takashi
diff --git a/sound/core/oss/mixer_oss.c b/sound/core/oss/mixer_oss.c index 33bf9a220ada..89b317c728b4 100644 --- a/sound/core/oss/mixer_oss.c +++ b/sound/core/oss/mixer_oss.c @@ -901,8 +901,8 @@ static void snd_mixer_oss_slot_free(struct snd_mixer_oss_slot *chn) struct slot *p = chn->private_data; if (p) { if (p->allocated && p->assigned) { - kfree_const(p->assigned->name); - kfree_const(p->assigned); + kfree(p->assigned->name); + kfree(p->assigned); } kfree(p); }
"assigned" and "assigned->name" are allocated in snd_mixer_oss_proc_write() using kmalloc() and kstrdup(), so there is no point in using kfree_const() to free these resources. Switch to the more standard kfree() to free these resources. This could avoid a memory leak. Fixes: 454f5ec1d2b7 ("ALSA: mixer: oss: Constify snd_mixer_oss_assign_table definition") Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> --- Compile tested only. For the records, this patch is a clean-up effort related to discussions at: - https://lore.kernel.org/all/ZvHurCYlCoi1ZTCX@skv.local/ - https://lore.kernel.org/all/20240924050937.697118-1-senozhatsky@chromium.org/ --- sound/core/oss/mixer_oss.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)