OSDN Git Service

arm64: mm: allow enforcing of strict break-before-make for page tables
authorWill Deacon <will.deacon@arm.com>
Fri, 29 Aug 2014 17:28:54 +0000 (18:28 +0100)
committerPrasad Sodagudi <psodagud@codeaurora.org>
Fri, 24 Feb 2017 17:42:33 +0000 (09:42 -0800)
commit2845235d531769c4a2e9885ee10ee30151d98ebe
tree028b643bc13f4a64cdb05c9d14770d2fdbce67cc
parentf419890fd6558b73f835457246666d6ab8c34d7a
arm64: mm: allow enforcing of strict break-before-make for page tables

The ARM ARM strongly recommends using break-before-make when updating
page table entries in the following circumstances:

  * A change of the memory type.
  * A change of the cacheability attributes.
  * A change of the output address (OA), if the OA of at least one of
    the old translation table entry and the new translation table entry
    is writable.

This patch adds a debug option to the kernel so that we can detect
break-before-make violations in set_pte and print a warning.

Change-Id: I038fd175d880355419b0795bf9967efea767e681
Git-commit: 07eea9d556ab76995119f0d034cf5f8280be278f
Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/will/linux.git
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
arch/arm64/Kconfig.debug
arch/arm64/include/asm/pgtable.h