
On 10/25/19 12:07 PM, AKASHI Takahiro wrote:
linux_compat.c is the best place for kmemdup(), which is currenly used only in ubifs.c, but will also be used when other kernel files (in my case, lib/crypto/x509_cert_parser.c and pkcs7_parser.c) will be imported. So just move it.
Signed-off-by: AKASHI Takahiro takahiro.akashi@linaro.org
fs/ubifs/ubifs.c | 19 +------------------ lib/linux_compat.c | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 18 deletions(-)
diff --git a/fs/ubifs/ubifs.c b/fs/ubifs/ubifs.c index 67a0e8caae70..1ffdfe0d9089 100644 --- a/fs/ubifs/ubifs.c +++ b/fs/ubifs/ubifs.c @@ -18,6 +18,7 @@ #include "ubifs.h" #include <u-boot/zlib.h>
+#include <linux/compat.h> #include <linux/err.h> #include <linux/lzo.h>
@@ -70,24 +71,6 @@ struct ubifs_compressor *ubifs_compressors[UBIFS_COMPR_TYPES_CNT];
#ifdef __UBOOT__ -/* from mm/util.c */
-/**
- kmemdup - duplicate region of memory
- @src: memory region to duplicate
- @len: memory region length
- @gfp: GFP mask to use
- */
-void *kmemdup(const void *src, size_t len, gfp_t gfp) -{
- void *p;
- p = kmalloc(len, gfp);
- if (p)
memcpy(p, src, len);
- return p;
-}
struct crypto_comp { int compressor; diff --git a/lib/linux_compat.c b/lib/linux_compat.c index 6373b4451eb3..1f8ef4266613 100644 --- a/lib/linux_compat.c +++ b/lib/linux_compat.c @@ -40,3 +40,20 @@ void *kmem_cache_alloc(struct kmem_cache *obj, int flag) { return malloc_cache_aligned(obj->sz); }
+/**
- kmemdup - duplicate region of memory
- @src: memory region to duplicate
- @len: memory region length
- @gfp: GFP mask to use
Please add a 'Return:' line here. Linux has:
* Return: newly allocated copy of @src or %NULL in case of error
Otherwise
Reviewed-by: Heinrich Schuchardt xypron.glpk@gmx.de
- */
+void *kmemdup(const void *src, size_t len, gfp_t gfp) +{
- void *p;
- p = kmalloc(len, gfp);
- if (p)
memcpy(p, src, len);
- return p;
+}