aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/mmu_context.h
diff options
context:
space:
mode:
authorMarc Zyngier <Marc.Zyngier@arm.com>2013-06-21 12:06:55 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2013-06-24 15:26:41 +0100
commitb8e4a4740fa2b17c0a447b3ab783b3dc10702e27 (patch)
treed6315409786d92102af8e057c8c4183d2d002101 /arch/arm/include/asm/mmu_context.h
parentARM: 7767/1: let the ASID allocator handle suspended animation (diff)
downloadlinux-dev-b8e4a4740fa2b17c0a447b3ab783b3dc10702e27.tar.xz
linux-dev-b8e4a4740fa2b17c0a447b3ab783b3dc10702e27.zip
ARM: 7768/1: prevent risks of out-of-bound access in ASID allocator
On a CPU that never ran anything, both the active and reserved ASID fields are set to zero. In this case the ASID_TO_IDX() macro will return -1, which is not a very useful value to index a bitmap. Instead of trying to offset the ASID so that ASID #1 is actually bit 0 in the asid_map bitmap, just always ignore bit 0 and start the search from bit 1. This makes the code a bit more readable, and without risk of OoB access. Cc: <stable@vger.kernel.org> # 3.9 Acked-by: Will Deacon <will.deacon@arm.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Reported-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/mmu_context.h')
0 files changed, 0 insertions, 0 deletions