diff options
Diffstat (limited to 'target/linux/ixp4xx/patches-2.6.36/603-arm-kluin-array-indexing.patch')
-rw-r--r-- | target/linux/ixp4xx/patches-2.6.36/603-arm-kluin-array-indexing.patch | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/target/linux/ixp4xx/patches-2.6.36/603-arm-kluin-array-indexing.patch b/target/linux/ixp4xx/patches-2.6.36/603-arm-kluin-array-indexing.patch new file mode 100644 index 0000000..3a8c80d --- /dev/null +++ b/target/linux/ixp4xx/patches-2.6.36/603-arm-kluin-array-indexing.patch @@ -0,0 +1,33 @@ +--- a/arch/arm/kernel/setup.c ++++ b/arch/arm/kernel/setup.c +@@ -323,12 +323,13 @@ static void __init setup_processor(void) + void cpu_init(void) + { + unsigned int cpu = smp_processor_id(); +- struct stack *stk = &stacks[cpu]; ++ struct stack *stk; + + if (cpu >= NR_CPUS) { + printk(KERN_CRIT "CPU%u: bad primary CPU number\n", cpu); + BUG(); + } ++ stk = &stacks[cpu]; + + /* + * Define the placement constraint for the inline asm directive below. +@@ -387,13 +388,14 @@ static struct machine_desc * __init setu + + static int __init arm_add_memory(unsigned long start, unsigned long size) + { +- struct membank *bank = &meminfo.bank[meminfo.nr_banks]; ++ struct membank *bank; + + if (meminfo.nr_banks >= NR_BANKS) { + printk(KERN_CRIT "NR_BANKS too low, " + "ignoring memory at %#lx\n", start); + return -EINVAL; + } ++ bank = &meminfo.bank[meminfo.nr_banks]; + + /* + * Ensure that start/size are aligned to a page boundary. |