Commit 4c3250d6 authored by Devin Kim's avatar Devin Kim Committed by Android Partner Code Review
Browse files

ARM: 7438/1: fill possible PMD empty section gaps



cherry-picking from kernel v3.5

On ARM with the 2-level page table format, a PMD entry is represented by
two consecutive section entries covering 2MB of virtual space.

However, static mappings always were allowed to use separate 1MB section
entries.  This means in practice that a static mapping may create half
populated PMDs via create_mapping().

Since commit 0536bdf3 (ARM: move iotable mappings within the vmalloc
region) those static mappings are located in the vmalloc area. We must
ensure no such half populated PMDs are accessible once vmalloc() or
ioremap() start looking at the vmalloc area for nearby free virtual
address ranges, or various things leading to a kernel crash will happen.

Change-Id: I4936a18717d9fce5921f0399ef60cfdcd0ba6100
Signed-off-by: default avatarNicolas Pitre <nico@linaro.org>
Reported-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
Tested-by: default avatar"R, Sricharan" <r.sricharan@ti.com>
Reviewed-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Cc: stable@vger.kernel.org
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent be4e6fc3
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment