X-Git-Url: http://git.cascardo.info/?a=blobdiff_plain;f=sound%2Fcore%2Fcompress_offload.c;fp=sound%2Fcore%2Fcompress_offload.c;h=583d4076903a62ac3a920399dbd3b52ac57e0e3f;hb=c2f14ba749c1ce94aa97c5a84733a89aaaadada4;hp=2c498488af6c5aebe12ec4a2cd7b432076b788af;hpb=1bc00f32b87c24f1a981e6dcf3f2174babee93ad;p=cascardo%2Flinux.git diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c index 2c498488af6c..583d4076903a 100644 --- a/sound/core/compress_offload.c +++ b/sound/core/compress_offload.c @@ -553,13 +553,9 @@ snd_compr_set_params(struct snd_compr_stream *stream, unsigned long arg) * we should allow parameter change only when stream has been * opened not in other cases */ - params = kmalloc(sizeof(*params), GFP_KERNEL); - if (!params) - return -ENOMEM; - if (copy_from_user(params, (void __user *)arg, sizeof(*params))) { - retval = -EFAULT; - goto out; - } + params = memdup_user((void __user *)arg, sizeof(*params)); + if (IS_ERR(params)) + return PTR_ERR(params); retval = snd_compress_check_input(params); if (retval)