浏览代码

ALSA: compress: Use memdup_user() rather than duplicating its implementation

Reuse existing functionality from memdup_user() instead of keeping
duplicate source code.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Markus Elfring 9 年之前
父节点
当前提交
c2f14ba749
共有 1 个文件被更改,包括 3 次插入7 次删除
  1. 3 7
      sound/core/compress_offload.c

+ 3 - 7
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
 		 * we should allow parameter change only when stream has been
 		 * opened not in other cases
 		 * 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);
 		retval = snd_compress_check_input(params);
 		if (retval)
 		if (retval)