Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4cc2f7a84d64d25a16bb9383148c1467284e2356 Commit: 4cc2f7a84d64d25a16bb9383148c1467284e2356 Parent: 431d2cd99f9721ad09f859dc65895f30385cc5c6 Author: Paul Brook <[EMAIL PROTECTED]> AuthorDate: Thu Dec 28 01:54:16 2006 +0100 Committer: Russell King <[EMAIL PROTECTED]> CommitDate: Sat Dec 30 17:05:08 2006 +0000
[ARM] 4074/1: Flat loader stack alignment The ARM EABI requires doubleword (8-byte) stack alignment at all public entry points. The patch below makes the bFLT loader honour this. It's always safe to start with a doubleword aligned stack so it doesn't seem worth making this conditional on CONFIG_AEABI. Paul Signed-off-by: Paul Brook <[EMAIL PROTECTED]> Signed-off-by: Russell King <[EMAIL PROTECTED]> --- include/asm-arm/flat.h | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/include/asm-arm/flat.h b/include/asm-arm/flat.h index 9669464..16f5375 100644 --- a/include/asm-arm/flat.h +++ b/include/asm-arm/flat.h @@ -5,7 +5,9 @@ #ifndef __ARM_FLAT_H__ #define __ARM_FLAT_H__ -#define flat_stack_align(sp) /* nothing needed */ +/* An odd number of words will be pushed after this alignment, so + deliberately misalign the value. */ +#define flat_stack_align(sp) sp = (void *)(((unsigned long)(sp) - 4) | 4) #define flat_argvp_envp_on_stack() 1 #define flat_old_ram_flag(flags) (flags) #define flat_reloc_valid(reloc, size) ((reloc) <= (size)) - To unsubscribe from this list: send the line "unsubscribe git-commits-head" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html