driver core: Convert to kasprintf() for early dev_name().
authorPaul Mundt <lethal@linux-sh.org>
Mon, 29 Mar 2010 06:51:35 +0000 (15:51 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Mon, 29 Mar 2010 06:51:35 +0000 (15:51 +0900)
This is just a simple refactoring patch on top of the early dev_name()
support, converting from kstrdup() to kasprintf() as suggested by Kay.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
drivers/base/platform.c

index d2d4926c5c4c1dd3ac6110447fe325f6f789b01c..f2377f3d95e5b7e91fc3f5c97e19e6b61e551546 100644 (file)
@@ -1245,19 +1245,20 @@ static int __init early_platform_driver_probe_id(char *class_str,
                         * rest of the driver core is initialized.
                         */
                        if (!match->dev.init_name) {
-                               char buf[32];
-
                                if (match->id != -1)
-                                       snprintf(buf, sizeof(buf), "%s.%d",
-                                                match->name, match->id);
+                                       match->dev.init_name =
+                                               kasprintf(GFP_KERNEL, "%s.%d",
+                                                         match->name,
+                                                         match->id);
                                else
-                                       snprintf(buf, sizeof(buf), "%s",
-                                                match->name);
+                                       match->dev.init_name =
+                                               kasprintf(GFP_KERNEL, "%s",
+                                                         match->name);
 
-                               match->dev.init_name = kstrdup(buf, GFP_KERNEL);
                                if (!match->dev.init_name)
                                        return -ENOMEM;
                        }
+
                        if (epdrv->pdrv->probe(match))
                                pr_warning("%s: unable to probe %s early.\n",
                                           class_str, match->name);