]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - security/keys/keyctl.c
treewide: use kv[mz]alloc* rather than opencoded variants
[mirror_ubuntu-artful-kernel.git] / security / keys / keyctl.c
index 82a9e18511089d12d0bf674b63d57f9aa6363ef5..447a7d5cee0f56ebcb1847d9442f6407e259be98 100644 (file)
@@ -101,14 +101,9 @@ SYSCALL_DEFINE5(add_key, const char __user *, _type,
 
        if (_payload) {
                ret = -ENOMEM;
-               payload = kmalloc(plen, GFP_KERNEL | __GFP_NOWARN);
-               if (!payload) {
-                       if (plen <= PAGE_SIZE)
-                               goto error2;
-                       payload = vmalloc(plen);
-                       if (!payload)
-                               goto error2;
-               }
+               payload = kvmalloc(plen, GFP_KERNEL);
+               if (!payload)
+                       goto error2;
 
                ret = -EFAULT;
                if (copy_from_user(payload, _payload, plen) != 0)
@@ -1071,14 +1066,9 @@ long keyctl_instantiate_key_common(key_serial_t id,
 
        if (from) {
                ret = -ENOMEM;
-               payload = kmalloc(plen, GFP_KERNEL);
-               if (!payload) {
-                       if (plen <= PAGE_SIZE)
-                               goto error;
-                       payload = vmalloc(plen);
-                       if (!payload)
-                               goto error;
-               }
+               payload = kvmalloc(plen, GFP_KERNEL);
+               if (!payload)
+                       goto error;
 
                ret = -EFAULT;
                if (!copy_from_iter_full(payload, plen, from))