Switch to memdup_user() to overwrite the allocated memory only once
instead of initializing the allocated memory to zero with kzalloc() and
then immediately overwriting it with copy_from_user().
Fixes the following Coccinelle/coccicheck warning reported by
memdup_user.cocci:
	WARNING opportunity for memdup_user
Signed-off-by: Thorsten Blum <thorsten.blum@toblux.com>
Link: https://lore.kernel.org/r/20240527083628.210491-2-thorsten.blum@toblux.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
                return -EINVAL;
 
        /* re-alloc to the new buffer length of the policy binary */
-       new_policy_buf = kzalloc(length, GFP_KERNEL);
-       if (!new_policy_buf)
-               return -ENOMEM;
-
-       if (copy_from_user(new_policy_buf, buf, length)) {
-               kfree(new_policy_buf);
-               return -EFAULT;
-       }
+       new_policy_buf = memdup_user(buf, length);
+       if (IS_ERR(new_policy_buf))
+               return PTR_ERR(new_policy_buf);
 
        kfree(dev->policy_buf);
        dev->policy_buf = new_policy_buf;