drivers/acpi: use kasprintf
PATCH 2/4 drivers/acpi: use kasprintf
From: Julia Lawall <[email protected]>
kasprintf combines kmalloc and sprintf, and takes care of the size calculation itself.
The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@@
expression a,flag;
expression list args;
statement S;
@@
a =
- \(kmalloc\|kzalloc\)(...,flag)
+ kasprintf(flag,args)
<... when != a
if (a == NULL || ...) S
...>
- sprintf(a,args);
// </smpl>
[[email protected]: don't change handling of `count']
Signed-off-by Julia Lawall <[email protected]>
Cc Len Brown <[email protected]>
Signed-off-by Andrew Morton <[email protected]>
---
drivers/acpi/video.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/acpi/video.c renamed from drivers/acpi/video.c~drivers-acpi-use-kasprintf +4 -4
@@ -1003,11 +1003,11 @@ static void acpi_video_device_find_cap(s result =acpi_video_init_brightness (device);if (result)return ; - name =kzalloc (MAX_NAME_LEN ,GFP_KERNEL ); + name =kasprintf (GFP_KERNEL ,"acpi_video%d" , count);if (!name)return ; + count++; -sprintf (name,"acpi_video%d" , count++);memset (&props,0 ,sizeof (struct backlight_properties )); props.max_brightness = device->brightness->count -3 ; device->backlight = backlight_device_register(name, NULL, device,
@@ -1063,10 +1063,10 @@ static void acpi_video_device_find_cap(sif (device->cap._DCS && device->cap._DSS) {static int count;char *name; - name =kzalloc (MAX_NAME_LEN ,GFP_KERNEL ); + name =kasprintf (GFP_KERNEL ,"acpi_video%d" , count);if (!name)return ; -sprintf (name,"acpi_video%d" , count++); + count++; device->output_dev =video_output_register (name,NULL , device, &acpi_output_properties);kfree (name);
_
applied to misc-2.6.35 branch
thanks,
Len Brown, Intel Open Source Technology Center