From: Alexey Dobriyan Date: Sun, 8 Sep 2024 09:27:45 +0000 (+0300) Subject: proc: fold kmalloc() + strcpy() into kmemdup() X-Git-Tag: v6.12-rc1~211^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4ad5f9a021bd7e3a48a8d11c52cef36d5e05ffcc;p=thirdparty%2Fkernel%2Flinux.git proc: fold kmalloc() + strcpy() into kmemdup() strcpy() will recalculate string length second time which is unnecessary in this case. Signed-off-by: Alexey Dobriyan Link: https://lore.kernel.org/r/90af27c1-0b86-47a6-a6c8-61a58b8aa747@p183 Signed-off-by: Christian Brauner --- diff --git a/fs/proc/generic.c b/fs/proc/generic.c index c02f1e63f82d0..dbe82cf23ee49 100644 --- a/fs/proc/generic.c +++ b/fs/proc/generic.c @@ -464,9 +464,9 @@ struct proc_dir_entry *proc_symlink(const char *name, (S_IFLNK | S_IRUGO | S_IWUGO | S_IXUGO),1); if (ent) { - ent->data = kmalloc((ent->size=strlen(dest))+1, GFP_KERNEL); + ent->size = strlen(dest); + ent->data = kmemdup(dest, ent->size + 1, GFP_KERNEL); if (ent->data) { - strcpy((char*)ent->data,dest); ent->proc_iops = &proc_link_inode_operations; ent = proc_register(parent, ent); } else {