* [PATCH dtc] Fix reserve map output for asm format.
@ 2007-04-14 22:15 Jerry Van Baren
2007-04-15 0:44 ` David Gibson
0 siblings, 1 reply; 2+ messages in thread
From: Jerry Van Baren @ 2007-04-14 22:15 UTC (permalink / raw)
To: linuxppc-dev, jdl
Add extra reserve map slots output for asm format (previously done for dtb
output).
Use cmalloc to pre-zero memory (for dtb input) and handle dtb (binary)
input being shorter than the total blob length (result of putting
extra space in the blob).
Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
---
Hi Jon:
Some simple fixes for handling extra reserve slots and extra space in
the blob.
Best regards,
gvb
dtc.h | 4 ++--
flattree.c | 14 +++++++++++---
2 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/dtc.h b/dtc.h
index 8cfe1a1..e77f9d1 100644
--- a/dtc.h
+++ b/dtc.h
@@ -55,10 +55,10 @@ static inline void die(char * str, ...)
static inline void *xmalloc(size_t len)
{
- void *new = malloc(len);
+ void *new = calloc(len, 1);
if (! new)
- die("malloc() failed\n");
+ die("calloc() failed\n");
return new;
}
diff --git a/flattree.c b/flattree.c
index 151d16e..6f0c9b7 100644
--- a/flattree.c
+++ b/flattree.c
@@ -21,6 +21,9 @@
#include "dtc.h"
#include "flat_dt.h"
+#define WARNMSG(...) if (quiet < 1) fprintf(stderr, "Warning: " __VA_ARGS__)
+
+
#define FTF_FULLPATH 0x1
#define FTF_VARALIGN 0x2
#define FTF_NAMEPROPS 0x4
@@ -490,6 +493,9 @@ void dt_to_asm(FILE *f, struct boot_info *bi, int version, int boot_cpuid_phys)
(unsigned int)(re->re.size >> 32),
(unsigned int)(re->re.size & 0xffffffff));
}
+ for (i = 0; i < reservenum; i++) {
+ fprintf(f, "\t.long\t0, 0\n\t.long\t0, 0\n");
+ }
fprintf(f, "\t.long\t0, 0\n\t.long\t0, 0\n");
@@ -818,9 +824,11 @@ struct boot_info *dt_from_blob(FILE *f)
p = blob + sizeof(magic) + sizeof(totalsize);
while (sizeleft) {
- if (feof(f))
- die("EOF before reading %d bytes of DT blob\n",
- totalsize);
+ if (feof(f)) {
+ WARNMSG("EOF after reading %d of %d bytes of DT blob, assuming there is extra space in the blob.\n",
+ totalsize - sizeleft, totalsize);
+ break;
+ }
rc = fread(p, 1, sizeleft, f);
if (ferror(f))
--
1.4.4.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH dtc] Fix reserve map output for asm format.
2007-04-14 22:15 [PATCH dtc] Fix reserve map output for asm format Jerry Van Baren
@ 2007-04-15 0:44 ` David Gibson
0 siblings, 0 replies; 2+ messages in thread
From: David Gibson @ 2007-04-15 0:44 UTC (permalink / raw)
To: Jerry Van Baren; +Cc: linuxppc-dev, jdl
On Sat, Apr 14, 2007 at 06:15:27PM -0400, Jerry Van Baren wrote:
> Add extra reserve map slots output for asm format (previously done for dtb
> output).
> Use cmalloc to pre-zero memory (for dtb input) and handle dtb (binary)
> input being shorter than the total blob length (result of putting
> extra space in the blob).
>
> Signed-off-by: Gerald Van Baren <vanbaren@cideas.com>
> ---
>
> Hi Jon:
>
> Some simple fixes for handling extra reserve slots and extra space in
> the blob.
>
> Best regards,
> gvb
>
> dtc.h | 4 ++--
> flattree.c | 14 +++++++++++---
> 2 files changed, 13 insertions(+), 5 deletions(-)
>
> diff --git a/dtc.h b/dtc.h
> index 8cfe1a1..e77f9d1 100644
> --- a/dtc.h
> +++ b/dtc.h
> @@ -55,10 +55,10 @@ static inline void die(char * str, ...)
>
> static inline void *xmalloc(size_t len)
> {
> - void *new = malloc(len);
> + void *new = calloc(len, 1);
>
> if (! new)
> - die("malloc() failed\n");
> + die("calloc() failed\n");
>
> return new;
> }
I'm less that thrilled about this change. There's a semi-standard
definition of "xmalloc()" and using callc() isn't it. I'd prefer the
clearing was done in the caller.
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2007-04-15 0:44 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-14 22:15 [PATCH dtc] Fix reserve map output for asm format Jerry Van Baren
2007-04-15 0:44 ` David Gibson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).