提交 daa41226 编写于 作者: A Andrew Morton 提交者: Greg Kroah-Hartman

driver core: platform_device_add_data(): use kmemdup()

Instead of open-coding it.
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 46227094
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
* information. * information.
*/ */
#include <linux/string.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/init.h> #include <linux/init.h>
...@@ -213,14 +214,13 @@ EXPORT_SYMBOL_GPL(platform_device_add_resources); ...@@ -213,14 +214,13 @@ EXPORT_SYMBOL_GPL(platform_device_add_resources);
int platform_device_add_data(struct platform_device *pdev, const void *data, int platform_device_add_data(struct platform_device *pdev, const void *data,
size_t size) size_t size)
{ {
void *d; void *d = kmemdup(data, size, GFP_KERNEL);
d = kmalloc(size, GFP_KERNEL);
if (d) { if (d) {
memcpy(d, data, size);
pdev->dev.platform_data = d; pdev->dev.platform_data = d;
return 0;
} }
return d ? 0 : -ENOMEM; return -ENOMEM;
} }
EXPORT_SYMBOL_GPL(platform_device_add_data); EXPORT_SYMBOL_GPL(platform_device_add_data);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册