Replaced calls to kmalloc followed by strcpy with a sincle call to kstrdup.
Patch found using coccinelle.
Signed-off-by: Alexandru Gheorghiu <[email protected]>
---
drivers/char/ipmi/ipmi_msghandler.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
index 053201b..617b443 100644
--- a/drivers/char/ipmi/ipmi_msghandler.c
+++ b/drivers/char/ipmi/ipmi_msghandler.c
@@ -2037,12 +2037,11 @@ int ipmi_smi_add_proc_entry(ipmi_smi_t smi, char *name,
entry = kmalloc(sizeof(*entry), GFP_KERNEL);
if (!entry)
return -ENOMEM;
- entry->name = kmalloc(strlen(name)+1, GFP_KERNEL);
+ entry->name = kstrdup(name, GFP_KERNEL);
if (!entry->name) {
kfree(entry);
return -ENOMEM;
}
- strcpy(entry->name, name);
file = proc_create_data(name, 0, smi->proc_dir, proc_ops, data);
if (!file) {
--
1.7.9.5
On 03/16/2013 09:16 AM, Alexandru Gheorghiu wrote:
> Replaced calls to kmalloc followed by strcpy with a sincle call to kstrdup.
> Patch found using coccinelle.
>
> Signed-off-by: Alexandru Gheorghiu <[email protected]>
> ---
> drivers/char/ipmi/ipmi_msghandler.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
> index 053201b..617b443 100644
> --- a/drivers/char/ipmi/ipmi_msghandler.c
> +++ b/drivers/char/ipmi/ipmi_msghandler.c
> @@ -2037,12 +2037,11 @@ int ipmi_smi_add_proc_entry(ipmi_smi_t smi, char *name,
> entry = kmalloc(sizeof(*entry), GFP_KERNEL);
> if (!entry)
> return -ENOMEM;
> - entry->name = kmalloc(strlen(name)+1, GFP_KERNEL);
> + entry->name = kstrdup(name, GFP_KERNEL);
> if (!entry->name) {
> kfree(entry);
> return -ENOMEM;
> }
> - strcpy(entry->name, name);
>
> file = proc_create_data(name, 0, smi->proc_dir, proc_ops, data);
> if (!file) {
Looks good to me.
Acked-by: Corey Minyard <[email protected]>
On 03/16/2013 09:16 AM, Alexandru Gheorghiu wrote:
> Replaced calls to kmalloc followed by strcpy with a sincle call to kstrdup.
> Patch found using coccinelle.
>
> Signed-off-by: Alexandru Gheorghiu <[email protected]>
> ---
> drivers/char/ipmi/ipmi_msghandler.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/char/ipmi/ipmi_msghandler.c b/drivers/char/ipmi/ipmi_msghandler.c
> index 053201b..617b443 100644
> --- a/drivers/char/ipmi/ipmi_msghandler.c
> +++ b/drivers/char/ipmi/ipmi_msghandler.c
> @@ -2037,12 +2037,11 @@ int ipmi_smi_add_proc_entry(ipmi_smi_t smi, char *name,
> entry = kmalloc(sizeof(*entry), GFP_KERNEL);
> if (!entry)
> return -ENOMEM;
> - entry->name = kmalloc(strlen(name)+1, GFP_KERNEL);
> + entry->name = kstrdup(name, GFP_KERNEL);
> if (!entry->name) {
> kfree(entry);
> return -ENOMEM;
> }
> - strcpy(entry->name, name);
>
> file = proc_create_data(name, 0, smi->proc_dir, proc_ops, data);
> if (!file) {
Actually, I should say that I've pulled this into my tree.
Thanks,
-corey