Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5588b29a authored by Geliang Tang's avatar Geliang Tang Committed by Michael Ellerman
Browse files

powerpc/powernv: use memdup_user



Use memdup_user() helper instead of open-coding to simplify the code.

Signed-off-by: default avatarGeliang Tang <geliangtang@gmail.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 31f8eb75
Loading
Loading
Loading
Loading
+3 −10
Original line number Diff line number Diff line
@@ -241,15 +241,9 @@ static ssize_t opal_prd_write(struct file *file, const char __user *buf,

	size = be16_to_cpu(hdr.size);

	msg = kmalloc(size, GFP_KERNEL);
	if (!msg)
		return -ENOMEM;

	rc = copy_from_user(msg, buf, size);
	if (rc) {
		size = -EFAULT;
		goto out_free;
	}
	msg = memdup_user(buf, size);
	if (IS_ERR(msg))
		return PTR_ERR(msg);

	rc = opal_prd_msg(msg);
	if (rc) {
@@ -257,7 +251,6 @@ static ssize_t opal_prd_write(struct file *file, const char __user *buf,
		size = -EIO;
	}

out_free:
	kfree(msg);

	return size;