dtc: fix endian issue when reading blobs
PATCH 1/1 dtc: fix endian issue when reading blobs
The reserve mem regions are screwy if you read a blob on x86. I'm guessing there may be a few more of these lurking in the code.
Signed-off-by Michael Neuling <[email protected]>
---
This now gives clean diffs between running on big and little endian machines.
flattree.c | 2 ++ 1 file changed, 2 insertions(+)
flattree.c +2 -0
@@ -619,6 +619,8 @@ static struct reserve_info *flat_read_me p = inb->ptr;while (1 ) {flat_read_chunk (inb, &re,sizeof (re)); + re.address =cpu_to_be64 (re.address); + re.size =cpu_to_be64 (re.size);if (re.size ==0 )break ;
The reserve mem regions are screwy if you read a blob on x86. I'm guessing there may be a few more of these lurking in the code.
Signed-off-by Michael Neuling <[email protected]>
---
Oops.. wrong way around.. thanks Milton.
flattree.c | 2 ++ 1 file changed, 2 insertions(+)
flattree.c +2 -0
@@ -619,6 +619,8 @@ static struct reserve_info *flat_read_me p = inb->ptr;while (1 ) {flat_read_chunk (inb, &re,sizeof (re)); + re.address =be64_to_cpu (re.address); + re.size =be64_to_cpu (re.size);if (re.size ==0 )break ;
So, like, the other day Michael Neuling mumbled:
Quoted 10 lines
The reserve mem regions are screwy if you read a blob on x86. I'm guessing there may be a few more of these lurking in the code.
Signed-off-by Michael Neuling <[email protected]>---
Oops.. wrong way around.. thanks Milton.flattree.c | 2 ++ 1 file changed, 2 insertions(+)
Your wish has been granted.
Thanks!
jdl