[U-Boot-Users] [PATCH] LIBFDT: use memmove() instead of memcpy()

Jerry Van Baren gvb.uboot at gmail.com
Tue Jan 8 05:51:21 CET 2008


This is partial patch from the DTC/libfdt
commit  67b6b33b9b413a450a72135b5dc59c0a1e33e647
Author: David Gibson <david at gibson.dropbear.id.au>
Date:   Wed Nov 21 11:56:14 2007 +1100

    The patch also fixes one genuine bug caught by valgrind -
    _packblocks() in fdt_rw.c was using memcpy() where it should have been
    using memmove().

Signed-off-by: Gerald Van Baren <vanbaren at cideas.com>
---

After comparing dtc/libfdt source to our libfdt source, I found we were
missing this partial patch.  The rest of the patch is not applicable.

gvb

 libfdt/fdt_rw.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/libfdt/fdt_rw.c b/libfdt/fdt_rw.c
index dfe5628..6673f8e 100644
--- a/libfdt/fdt_rw.c
+++ b/libfdt/fdt_rw.c
@@ -358,12 +358,12 @@ static void _packblocks(const void *fdt, void *buf,
 	memmove(buf + mem_rsv_off, fdt + fdt_off_mem_rsvmap(fdt), mem_rsv_size);
 	fdt_set_off_mem_rsvmap(buf, mem_rsv_off);
 
-	memcpy(buf + struct_off, fdt + fdt_off_dt_struct(fdt), struct_size);
+	memmove(buf + struct_off, fdt + fdt_off_dt_struct(fdt), struct_size);
 	fdt_set_off_dt_struct(buf, struct_off);
 	fdt_set_size_dt_struct(buf, struct_size);
 
-	memcpy(buf + strings_off, fdt + fdt_off_dt_strings(fdt),
-	       fdt_size_dt_strings(fdt));
+	memmove(buf + strings_off, fdt + fdt_off_dt_strings(fdt),
+		fdt_size_dt_strings(fdt));
 	fdt_set_off_dt_strings(buf, strings_off);
 	fdt_set_size_dt_strings(buf, fdt_size_dt_strings(fdt));
 }
-- 
1.5.3.7





More information about the U-Boot mailing list