diff mbox

[1/2] Make dtstruct variable to be 8 byte aligned

Message ID 20090810141351.GD3110@in.ibm.com (mailing list archive)
State Not Applicable
Headers show

Commit Message

Mohan Kumar M Aug. 10, 2009, 2:13 p.m. UTC
[PATCH 1/2] Make dtstruct variable to be 8 byte aligned

kexec is creating a version 3 device tree to be backwards compatible. This
version of the struct has 8-byte alignment for properties whose value is 8 or
more bytes. As the code directly checks the pointer when deciding to add the
alignment word, the struct memory must start on an 8 byte boundary. Force the
dtstruct variable to be always 8 bytes aligned.

Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>
---
 kexec/arch/ppc64/fs2dt.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Comments

Simon Horman Aug. 12, 2009, 11:25 p.m. UTC | #1
On Mon, Aug 10, 2009 at 07:43:51PM +0530, M. Mohan Kumar wrote:
> [PATCH 1/2] Make dtstruct variable to be 8 byte aligned
> 
> kexec is creating a version 3 device tree to be backwards compatible. This
> version of the struct has 8-byte alignment for properties whose value is 8 or
> more bytes. As the code directly checks the pointer when deciding to add the
> alignment word, the struct memory must start on an 8 byte boundary. Force the
> dtstruct variable to be always 8 bytes aligned.
> 
> Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>

Thanks, applied.
diff mbox

Patch

diff --git a/kexec/arch/ppc64/fs2dt.c b/kexec/arch/ppc64/fs2dt.c
index 1f551fd..b01ff86 100644
--- a/kexec/arch/ppc64/fs2dt.c
+++ b/kexec/arch/ppc64/fs2dt.c
@@ -41,7 +41,7 @@ 
 
 static char pathname[MAXPATH], *pathstart;
 static char propnames[NAMESPACE] = { 0 };
-static unsigned dtstruct[TREEWORDS], *dt;
+static unsigned dtstruct[TREEWORDS] __attribute__ ((aligned (8))), *dt;
 static unsigned long long mem_rsrv[2*MEMRESERVE] = { 0, 0 };
 
 static int crash_param = 0;