RE: [PATCH v1] platform/x86: wmi: Replace kmalloc + sprintf() with kasprintf()

From: David Laight
Date: Fri Feb 16 2018 - 10:54:46 EST


From: Andy Shevchenko
> Sent: 16 February 2018 15:40
>
> kasprintf() does the job of two: kmalloc() and sprintf().
> Replace two calls with one.
...
> - buf = kmalloc(strlen(wdriver->driver.name) + 5, GFP_KERNEL);
> + buf = kasprintf(GFP_KERNEL, "wmi/%s", wdriver->driver.name);
...

Except that kasprintf() has no idea how long a buffer is needed.
It might even do the printf twice just to get the length.

David