linux/arch/arm
Lorenzo Pieralisi ce7b175656 ARM: 7585/1: kernel: fix nr_cpu_ids check in DT logical map init
If a kernel is configured with a DT containing more /cpu nodes than
nr_cpu_ids, the number of cpus must be capped in the DT parsing
code. Current code carries out the check, but fails to cap the
value and the check is executed after the cpu logical index is used,
which can lead to memory corruption due to index overflow.

This patch refactors the check against nr_cpu_ids and move it before
any computed index is used in the parsing code.

Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Reported-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-11-23 13:01:31 +00:00
..
boot ARM: boot: Fix usage of kecho 2012-11-12 23:22:54 +01:00
common ARM: gic: use a private mapping for CPU target interfaces 2012-11-19 15:44:34 +00:00
configs ARM: versatile: fix versatile_defconfig 2012-10-27 17:46:56 +02:00
crypto arm/crypto: Add optimized AES and SHA1 routines 2012-09-07 04:17:02 +08:00
include ARM: 7584/1: perf: fix link error when CONFIG_HW_PERF_EVENTS is not selected 2012-11-23 13:01:30 +00:00
kernel ARM: 7585/1: kernel: fix nr_cpu_ids check in DT logical map init 2012-11-23 13:01:31 +00:00
lib ARM: export default read_current_timer 2012-10-09 20:24:36 +02:00
mach-at91 Two little fixes, one related to the move to sparse irq and 2012-11-16 16:43:58 +01:00
mach-bcm2835 ARM: dtb: move all dtb targets to common Makefile 2012-09-20 22:58:17 -07:00
mach-clps711x ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-cns3xxx
mach-davinci ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-dove ARM: dove: Add crypto engine to DT 2012-10-17 17:20:01 +00:00
mach-ebsa110 ARM: soc: driver specific changes 2012-10-01 18:46:13 -07:00
mach-ep93xx ARM: soc: multiplatform enablement 2012-10-01 19:11:38 -07:00
mach-exynos ARM: EXYNOS: Set .smp field of machine descriptor for exynos4-dt 2012-10-22 08:16:44 +09:00
mach-footbridge ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-gemini ARM: gemini: fix the gemini build 2012-09-04 22:17:34 -07:00
mach-h720x ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-highbank ARM: highbank: retry wfi on reset request 2012-11-06 06:54:36 -08:00
mach-imx ARM: imx: ehci: fix host power mask bit 2012-11-16 15:55:05 +01:00
mach-integrator ARM: integrator: use __iomem pointers for MMIO, part 2 2012-10-09 17:27:33 +02:00
mach-iop13xx Merge branch 'late/fixes' into fixes 2012-10-07 07:22:32 -07:00
mach-iop32x Merge branch 'cleanup/__iomem' into next/cleanup 2012-09-22 10:24:29 -07:00
mach-iop33x
mach-ixp4xx ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-kirkwood ARM: Kirkwood: fix disabling CACHE_FEROCEON_L2 2012-10-18 17:04:24 +00:00
mach-ks8695 Merge branch 'late/fixes' into fixes 2012-10-07 07:22:32 -07:00
mach-l7200/include/mach
mach-lpc32xx ARM: soc: multiplatform enablement 2012-10-01 19:11:38 -07:00
mach-mmp ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-msm ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-mv78xx0 Merge branch 'late/fixes' into fixes 2012-10-07 07:22:32 -07:00
mach-mvebu ARM: mvebu: fix build breaks from multi-platform conversion 2012-09-28 22:27:07 +02:00
mach-mxs ARM: soc: multiplatform enablement 2012-10-01 19:11:38 -07:00
mach-netx ARM: netx: move platform_data definitions 2012-09-14 11:17:36 +02:00
mach-nomadik ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-omap1 ASoC: Fixes for v3.7 2012-10-17 14:09:15 +02:00
mach-omap2 Merge branch 'perf/updates' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into devel-stable 2012-11-19 11:22:35 +00:00
mach-orion5x ARM: soc: late platform updates 2012-10-07 20:55:16 +09:00
mach-picoxcell ARM: initial multiplatform support 2012-09-14 09:22:06 -05:00
mach-prima2 pinctrl: sirf: remove sirfsoc_gpio_set_pull function 2012-10-15 09:09:27 +02:00
mach-pxa ARM: pxa/spitz_pm: Fix hang when resuming from STR 2012-10-28 07:53:45 +08:00
mach-realview ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-rpc ARM: rpc: check device_register return code in ecard_probe 2012-10-07 10:33:09 +02:00
mach-s3c24xx Merge branch 'v3.7-samsung-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into fixes 2012-10-26 14:45:06 +02:00
mach-s3c64xx ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-s3c2410
mach-s3c2412 ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-s3c2440 ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-s5p64x0 ARM: SAMSUNG: Add naming of s3c64xx-spi devices 2012-10-17 16:47:32 +09:00
mach-s5pc100 ARM: SAMSUNG: Add naming of s3c64xx-spi devices 2012-10-17 16:47:32 +09:00
mach-s5pv210 ARM: SAMSUNG: Add naming of s3c64xx-spi devices 2012-10-17 16:47:32 +09:00
mach-sa1100 ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-shark Merge branch 'late/fixes' into fixes 2012-10-07 07:22:32 -07:00
mach-shmobile ARM: shmobile: r8a7779: I/O address abuse cleanup 2012-10-19 15:39:38 +09:00
mach-socfpga ARM: initial multiplatform support 2012-09-14 09:22:06 -05:00
mach-spear3xx ARM: move all dtb targets out of Makefile.boot 2012-09-14 09:22:04 -05:00
mach-spear6xx ARM: move all dtb targets out of Makefile.boot 2012-09-14 09:22:04 -05:00
mach-spear13xx ARM: SPEAr: Remove unused empty files 2012-10-25 16:34:18 +02:00
mach-tegra ARM: tegra: add tegra_timer clock 2012-10-16 11:15:05 -06:00
mach-u300 ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-ux500 ARM: ux500: Fix build error relating to IRQCHIP_SKIP_SET_WAKE 2012-10-25 08:43:49 +01:00
mach-versatile ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
mach-vexpress Features: 2012-10-07 07:13:01 +09:00
mach-vt8500 arm: vt8500: Fix build warning in uncompress.h 2012-10-07 14:50:06 -07:00
mach-w90x900 ARM: w90x900: move platform_data definitions 2012-09-14 11:18:59 +02:00
mach-zynq
mm Merge branch 'asid-allocation' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux into devel-stable 2012-11-19 11:30:49 +00:00
net
nwfpe
oprofile
plat-iop Bunch of perf updates for the ARM backend that pave the way for 2012-09-04 22:12:41 -07:00
plat-mxc ARM i.MX fixes for 3.7-rc 2012-10-25 15:57:40 +02:00
plat-nomadik ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
plat-omap ARM: OMAP2+: hwmod: add flag to prevent hwmod code from touching IP block during init 2012-10-31 05:02:31 -06:00
plat-orion Merge branch 'samsung_platform_data' into staging/for_v3.7 2012-10-05 22:32:05 -03:00
plat-pxa ARM: pxa: move platform_data definitions 2012-09-14 11:18:10 +02:00
plat-s3c24xx ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
plat-samsung ARM: SAMSUNG: Add naming of s3c64xx-spi devices 2012-10-17 16:47:32 +09:00
plat-spear ARM: config: sort select statements alphanumerically 2012-10-13 17:11:28 +01:00
plat-versatile Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm 2012-10-07 21:20:57 +09:00
tools ARM: boot: Fix usage of kecho 2012-11-12 23:22:54 +01:00
vfp ARM: 7566/1: vfp: fix save and restore when running on pre-VFPv3 and CONFIG_VFPv3 set 2012-10-29 10:04:05 +00:00
xen xen/arm: Fix compile errors when drivers are compiled as modules (export more). 2012-11-09 07:48:22 -05:00
Kconfig Merge tag 'fixes-for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc into fixes 2012-10-22 22:56:09 +01:00
Kconfig-nommu
Kconfig.debug ARM: soc: multiplatform enablement 2012-10-01 19:11:38 -07:00
Makefile ARM: pass -marm to gcc by default for both C and assembler 2012-10-09 20:29:05 +02:00