Files
kernel_arpi/arch/arm/include/asm
Steve Capper 56530f5d2d ARM: 8579/1: mm: Fix definition of pmd_mknotpresent
Currently pmd_mknotpresent will use a zero entry to respresent an
invalidated pmd.

Unfortunately this definition clashes with pmd_none, thus it is
possible for a race condition to occur if zap_pmd_range sees pmd_none
whilst __split_huge_pmd_locked is running too with pmdp_invalidate
just called.

This patch fixes the race condition by modifying pmd_mknotpresent to
create non-zero faulting entries (as is done in other architectures),
removing the ambiguity with pmd_none.

[catalin.marinas@arm.com: using L_PMD_SECT_VALID instead of PMD_TYPE_SECT]

Fixes: 8d96250700 ("ARM: mm: Transparent huge page support for LPAE systems.")
Cc: <stable@vger.kernel.org> # 3.11+
Reported-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Cc: Russell King <linux@armlinux.org.uk>
Signed-off-by: Steve Capper <steve.capper@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2016-06-09 17:51:47 +01:00
..
2016-01-12 20:46:54 +02:00
2014-06-02 09:20:18 +01:00
2014-12-04 12:41:50 +00:00
2015-05-05 13:35:39 -06:00
2015-05-28 15:31:53 +02:00
2015-09-16 16:53:39 +02:00
2014-06-01 01:17:12 +01:00
2015-06-01 23:48:19 +01:00
2014-02-25 11:33:37 +00:00
2014-03-18 16:39:40 -04:00