linux/arch/arm64/mm
Mark Rutland 9c4e08a302 arm64: mm: allow sections for unaligned bases
Callees of __create_mapping may decide to create section mappings if
sufficient low bits of the physical and virtual addresses they were
passed are zero. While __create_mapping rounds the virtual base address
down, it does not similarly round the physical base address down, and
hence non-zero bits in the physical address can prevent use of a section
mapping, even where a whole next-level table would be used instead.

Round down the physical base address in __create_mapping to enable all
callees to always create section mappings when such a mapping is
possible.

Cc: Laura Abbott <labbott@fedoraproject.org>
Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Steve Capper <steve.capper@linaro.org>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-12-01 09:47:03 +00:00
..
cache.S arm64: use ENDPIPROC() to annotate position independent assembler routines 2015-10-12 16:19:45 +01:00
context.c arm64: mm: keep reserved ASIDs in sync with mm after multiple rollovers 2015-11-26 15:27:10 +00:00
copypage.c arm64: export __cpu_{clear,copy}_user_page functions 2014-07-08 17:30:51 +01:00
dma-mapping.c arm64: simplify dma_get_ops 2015-11-17 12:05:18 +00:00
dump.c arm64: Make the kernel page dump utility aware of the CONT bit 2015-10-08 18:39:57 +01:00
extable.c arm64: MMU fault handling and page table management 2012-09-17 13:41:57 +01:00
fault.c arm64: mm: fix fault_info table xFSC decoding 2015-11-25 15:49:16 +00:00
flush.c arm64: force CONFIG_SMP=y and remove redundant #ifdefs 2015-07-27 11:08:40 +01:00
hugetlbpage.c arm64: hugetlb: remove paragraph about writing to FSF 2015-07-27 11:08:40 +01:00
init.c arm64: Fix build with CONFIG_ZONE_DMA=n 2015-10-29 16:58:00 +00:00
ioremap.c arm64: add ioremap physical address information 2015-01-23 15:29:06 +00:00
kasan_init.c arm64: kasan: fix issues reported by sparse 2015-10-13 14:54:42 +01:00
Makefile arm64: add KASAN support 2015-10-12 17:46:36 +01:00
mm.h arm64: add better page protections to arm64 2015-01-22 14:54:29 +00:00
mmap.c mm: expose arch_mmap_rnd when available 2015-04-14 16:49:05 -07:00
mmu.c arm64: mm: allow sections for unaligned bases 2015-12-01 09:47:03 +00:00
pageattr.c arm64/mm: use PAGE_ALIGNED instead of IS_ALIGNED 2015-10-28 18:36:32 +00:00
pgd.c arm64: move PGD_SIZE definition to pgalloc.h 2015-10-12 17:46:30 +01:00
proc-macros.S arm64: mm: increase VA range of identity map 2015-03-23 11:35:29 +00:00
proc.S arm64 updates for 4.4: 2015-11-04 14:47:13 -08:00