aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@secretlab.ca>2007-10-22 18:38:32 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-22 22:18:54 -0400
commit3650b0a304663d98a63c68f9020eb1ded477989e (patch)
tree37786f6852c3f59df71dddc109915c05cd4ef003
parent527da38d33f16da4c245da3a5a3858193f8a0261 (diff)
ppc: fix AT_VECTOR_SIZE on arch/ppc
Commit 4f9a58d75bfe82ab2b8ba5b8506dfb190a267834 ("increase AT_VECTOR_SIZE to terminate saved_auxv properly") changes the size of AT_VECTOR_SIZE from hard coded '44' to a calculation based on the value of AT_VECTOR_SIZE_ARCH and AT_VECTOR_SIZE_BASE. The change works for arch/powerpc, but it breaks arch/ppc because the needed AT_VECTOR_SIZE_ARCH is not present in include/asm-ppc/system.h and a default value of 0 is used instead. This results in AT_VECTOR_SIZE being too small and it causes a kernel crash on loading init. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--include/asm-ppc/system.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/asm-ppc/system.h b/include/asm-ppc/system.h
index cc45780421ca..51df94c73846 100644
--- a/include/asm-ppc/system.h
+++ b/include/asm-ppc/system.h
@@ -33,6 +33,7 @@
33 33
34#define set_mb(var, value) do { var = value; mb(); } while (0) 34#define set_mb(var, value) do { var = value; mb(); } while (0)
35 35
36#define AT_VECTOR_SIZE_ARCH 6 /* entries in ARCH_DLINFO */
36#ifdef CONFIG_SMP 37#ifdef CONFIG_SMP
37#define smp_mb() mb() 38#define smp_mb() mb()
38#define smp_rmb() rmb() 39#define smp_rmb() rmb()