On Mon, 24 Mar 2014, Liu Hua wrote: > In 32-bit ARM systems, the fixmap mapping region can support > no more than 14 CPUs(total: 896k; one CPU: 64K). And we can > configure NR_CPUS up to 32. So there is a mismatch. > > This patch extends the fixmapping region downwards to boundary > of DMA mapping region(0xffe00000-0xfffe0000). Then the fixmap > mapping region can support up to 30 CPUs.
You failed to update CONSISTENT_END in your patch. Hmmm? Waitaminute... Well well... It looks like the static mapping area for DMA was removed from the code by commit e9da6e9905e6 but the information in Documentation/arm/memory.txt was not updated accordingly. CONSISTENT_END in arch/arm/include/asm/memory.h has no more users and shoule probably be removed. This means 0xffc00000 to 0xffefffff is no longer used by anything. > There seems to be no easy way to support 32 CPUs by simply > changing memory layout on ARM Linux. So I also limit the > maximal CPU number one can configure. I think the above should help you solve your CPU limit easily. Nicolas -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

