remarkable-linux/arch/arm
Doug Berger 9e25ebfe56 ARM: 8685/1: ensure memblock-limit is pmd-aligned
The pmd containing memblock_limit is cleared by prepare_page_table()
which creates the opportunity for early_alloc() to allocate unmapped
memory if memblock_limit is not pmd aligned causing a boot-time hang.

Commit 965278dcb8 ("ARM: 8356/1: mm: handle non-pmd-aligned end of RAM")
attempted to resolve this problem, but there is a path through the
adjust_lowmem_bounds() routine where if all memory regions start and
end on pmd-aligned addresses the memblock_limit will be set to
arm_lowmem_limit.

Since arm_lowmem_limit can be affected by the vmalloc early parameter,
the value of arm_lowmem_limit may not be pmd-aligned. This commit
corrects this oversight such that memblock_limit is always rounded
down to pmd-alignment.

Fixes: 965278dcb8 ("ARM: 8356/1: mm: handle non-pmd-aligned end of RAM")
Signed-off-by: Doug Berger <opendmb@gmail.com>
Suggested-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
2017-06-29 23:10:12 +01:00
..
boot ARM: 8680/1: boot/compressed: fix inappropriate Thumb2 mnemonic for __nop 2017-06-12 15:47:27 +01:00
common ARM: 8675/1: MCPM: ensure not to enter __hyp_soft_restart from loopback and cpu_power_down 2017-05-23 17:26:08 +01:00
configs ARM: SoC defconfig updates 2017-05-09 09:58:15 -07:00
crypto
firmware
include ARM: 8676/1: NOMMU: provide pgprot_device() macro 2017-06-05 10:29:40 +01:00
kernel ARM: 8682/1: V7M: Set cacheid iff DminLine or IminLine is nonzero 2017-06-12 15:47:29 +01:00
kvm * ARM: HYP mode stub supports kexec/kdump on 32-bit; improved PMU 2017-05-08 12:37:56 -07:00
lib
mach-alpine
mach-artpec
mach-asm9260
mach-aspeed
mach-at91
mach-axxia
mach-bcm
mach-berlin
mach-clps711x
mach-cns3xxx
mach-davinci ARM: SoC platform updates 2017-05-09 09:49:36 -07:00
mach-digicolor
mach-dove
mach-ebsa110
mach-efm32
mach-ep93xx
mach-exynos
mach-footbridge
mach-gemini
mach-highbank
mach-hisi
mach-imx ARM: SoC driver updates 2017-05-09 10:01:15 -07:00
mach-integrator
mach-iop13xx
mach-iop32x
mach-iop33x
mach-ixp4xx scripts/spelling.txt: add regsiter -> register spelling mistake 2017-05-08 17:15:13 -07:00
mach-keystone
mach-ks8695
mach-lpc18xx
mach-lpc32xx
mach-mediatek
mach-meson
mach-mmp
mach-moxart irqchip/faraday: Replace moxa with ftintc010 2017-04-07 10:36:30 +01:00
mach-mv78xx0
mach-mvebu
mach-mxs ARM: mxs: add support for I2SE Duckbill 2 boards 2017-04-10 21:25:50 +08:00
mach-netx
mach-nomadik
mach-nspire
mach-omap1
mach-omap2 Sort of on the quieter side this time, which is probably due more 2017-05-10 13:38:18 -07:00
mach-orion5x
mach-oxnas
mach-picoxcell
mach-prima2
mach-pxa ARM: pxa/raumfeld: fix compile error in rotary controller resources 2017-04-18 11:28:38 -07:00
mach-qcom
mach-realview
mach-rockchip
mach-rpc
mach-s3c24xx
mach-s3c64xx regulator: arizona-ldo1: Move pdata into a separate structure 2017-04-25 16:36:32 +01:00
mach-s5pv210
mach-sa1100
mach-shmobile
mach-socfpga
mach-spear
mach-sti
mach-stm32
mach-sunxi
mach-tango
mach-tegra
mach-u300
mach-uniphier
mach-ux500
mach-versatile
mach-vexpress
mach-vt8500
mach-w90x900
mach-zx
mach-zynq
mm ARM: 8685/1: ensure memblock-limit is pmd-aligned 2017-06-29 23:10:12 +01:00
net arm: use set_memory.h header 2017-05-08 17:15:13 -07:00
nwfpe
oprofile
plat-iop
plat-omap
plat-orion
plat-pxa
plat-samsung
plat-versatile ARM: plat-versatile: remove stale clock header 2017-04-07 11:57:57 +02:00
probes
tools
vdso
vfp
xen xen: Implement EFI reset_system callback 2017-05-02 12:06:50 +02:00
Kconfig ARM: 8681/1: make VMSPLIT_3G_OPT depends on !ARM_LPAE 2017-06-12 15:47:28 +01:00
Kconfig-nommu
Kconfig.debug
Makefile