Skip to contentSkip to conversation

fdt_resize(): ensure minimum padding

PATCH New Peter Korsgaard 2 participants 3 messages Oct 27, 2008 – Oct 28, 2008

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 fdt_resize(): ensure minimum padding

fdt_add_mem_rsv() requires space for a struct fdt_reserve_entry (16 bytes), so make sure that fdt_resize atleast adds that much padding, no matter what the location or size of the fdt is.

---
 common/fdt_support.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
common/fdt_support.c +3 -2
index 8ceeb0f..e2197ed 100644
@@ -575,9 +575,10 @@ int fdt_resize(void *blob)
 		}
 	}
 
-	/* Calculate the actual size of the fdt */
+	/* Calculate the actual size of the fdt
+	   + size needed for fdt_add_mem_rsv */
 	actualsize = fdt_off_dt_strings(blob) +
-		fdt_size_dt_strings(blob);
+		fdt_size_dt_strings(blob) + sizeof(struct fdt_reserve_entry);
 
 	/* Make it so the fdt ends on a page boundary */
 	actualsize = ALIGN(actualsize, 0x1000);
Signature · 1 line
1.5.6.5
#1 lore raw

PATCH 1/1 fdt_resize(): ensure minimum padding

Quoted 2 lines · Peter Korsgaard

fdt_add_mem_rsv() requires space for a struct fdt_reserve_entry (16 bytes), so make sure that fdt_resize atleast adds that much

s/atleast/at least/

Quoted 12 lines

padding, no matter what the location or size of the fdt is.

---
 common/fdt_support.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)
common/fdt_support.c +0 -0
index 8ceeb0f..e2197ed 100644

common/fdt_support.c int fdt_resize(void *blob) · line 579

Quoted 6 lines
common/fdt_support.c +2 -1
@@ -575,9 +575,10 @@ int fdt_resize(void *blob)
 		}
 	}
 
-	/* Calculate the actual size of the fdt */
+	/* Calculate the actual size of the fdt
+	   + size needed for fdt_add_mem_rsv */

Please use coding standard multiline comments:

	/*
	 * Calculate the actual size of the fdt
	 * plus the size needed for fdt_add_mem_rsv
	 */

common/fdt_support.c int fdt_resize(void *blob) · line 584

Quoted 6 lines
common/fdt_support.c +1 -1
 	actualsize = fdt_off_dt_strings(blob) +
-		fdt_size_dt_strings(blob);
+		fdt_size_dt_strings(blob) + sizeof(struct fdt_reserve_entry);
 
 	/* Make it so the fdt ends on a page boundary */
 	actualsize = ALIGN(actualsize, 0x1000);

Thanks,
gvb

#2 lore raw

PATCH 1/1 fdt_resize(): ensure minimum padding

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Jerry" == Jerry Van Baren <[email protected]> writes:

Hi,

Jerry> Please use coding standard multiline comments:
Jerry> /*
Jerry> * Calculate the actual size of the fdt
Jerry> * plus the size needed for fdt_add_mem_rsv
Jerry> */

Thanks, will fix and respin.

Signature · 1 line
Bye, Peter Korsgaard