Skip to content

Commit 59aeaf3

Browse files
author
Al Viro
committed
snd_ctl_elem_init_enum_names(): switch to vmemdup_user()
Signed-off-by: Al Viro <[email protected]>
1 parent 88a8903 commit 59aeaf3

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

sound/core/control.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1198,7 +1198,7 @@ static int snd_ctl_elem_init_enum_names(struct user_element *ue)
11981198
if (ue->info.value.enumerated.names_length > 64 * 1024)
11991199
return -EINVAL;
12001200

1201-
names = memdup_user((const void __user *)user_ptrval,
1201+
names = vmemdup_user((const void __user *)user_ptrval,
12021202
ue->info.value.enumerated.names_length);
12031203
if (IS_ERR(names))
12041204
return PTR_ERR(names);
@@ -1209,7 +1209,7 @@ static int snd_ctl_elem_init_enum_names(struct user_element *ue)
12091209
for (i = 0; i < ue->info.value.enumerated.items; ++i) {
12101210
name_len = strnlen(p, buf_len);
12111211
if (name_len == 0 || name_len >= 64 || name_len == buf_len) {
1212-
kfree(names);
1212+
kvfree(names);
12131213
return -EINVAL;
12141214
}
12151215
p += name_len + 1;
@@ -1227,7 +1227,7 @@ static void snd_ctl_elem_user_free(struct snd_kcontrol *kcontrol)
12271227
struct user_element *ue = kcontrol->private_data;
12281228

12291229
kvfree(ue->tlv_data);
1230-
kfree(ue->priv_data);
1230+
kvfree(ue->priv_data);
12311231
kfree(ue);
12321232
}
12331233

0 commit comments

Comments
 (0)