linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V4 0/2] PTE fixes for ARM LPAE
@ 2014-06-16 14:32 Steve Capper
  2014-06-16 14:32 ` [PATCH V4 1/2] arm: mm: Introduce {pte, pmd}_isset and {pte, pmd}_isclear Steve Capper
  2014-06-16 14:32 ` [PATCH V4 2/2] arm: mm: Switch back to L_PTE_WRITE Steve Capper
  0 siblings, 2 replies; 10+ messages in thread
From: Steve Capper @ 2014-06-16 14:32 UTC (permalink / raw)
  To: linux-arm-kernel

This series fixes a couple of problems that I encountered on ARM with
LPAE.
 1) Some pte accessors can have their results cancelled out by a
    downcast. This is addressed by the first patch.

 2) It is impossible to distinguish between clean writable ptes and
    read only ptes. This is addressed by the second patch.

I was going to put V3 of this series into the patch system, but got
distracted, and some recent activity has necessitated a revision of
this series.

Notable changes in this series from V3->V4:
 o) Rebased to take into account the BE LPAE fix in 3.16-rc1.
 o) THP logic added as this was missing.

I was tempted to put a third patch in the series to re-route THP through
the pte setters, but decided to take baby steps instead.

This series has been tested with libhugetlbfs unit tests, ltp mm tests
and a custom THP test to test what happens when PROT_NONE THPs are
faulted. I have tested on an Arndale board with LPAE and classic MMU
(with classic MMU, only ltp mm tests were run), and would appreciate
any testers for anything not covered by proc-v7-[23]level.S.

Also any comments/feedback would be appreciated.

Cheers,
--
Steve

Steve Capper (2):
  arm: mm: Introduce {pte,pmd}_isset and {pte,pmd}_isclear
  arm: mm: Switch back to L_PTE_WRITE

 arch/arm/include/asm/pgtable-2level.h |  2 +-
 arch/arm/include/asm/pgtable-3level.h | 24 ++++++++++++----
 arch/arm/include/asm/pgtable.h        | 52 +++++++++++++++++++----------------
 arch/arm/mm/dump.c                    |  8 +++---
 arch/arm/mm/mmu.c                     | 25 +++++++++--------
 arch/arm/mm/proc-macros.S             | 16 +++++------
 arch/arm/mm/proc-v7-2level.S          |  6 ++--
 arch/arm/mm/proc-v7-3level.S          |  4 ++-
 arch/arm/mm/proc-xscale.S             |  4 +--
 9 files changed, 80 insertions(+), 61 deletions(-)

-- 
1.8.1.4

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2014-06-23 15:07 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-16 14:32 [PATCH V4 0/2] PTE fixes for ARM LPAE Steve Capper
2014-06-16 14:32 ` [PATCH V4 1/2] arm: mm: Introduce {pte, pmd}_isset and {pte, pmd}_isclear Steve Capper
2014-06-20  9:12   ` [PATCH V4 1/2] arm: mm: Introduce {pte,pmd}_isset and {pte,pmd}_isclear Will Deacon
2014-06-20 10:04     ` Russell King - ARM Linux
2014-06-16 14:32 ` [PATCH V4 2/2] arm: mm: Switch back to L_PTE_WRITE Steve Capper
2014-06-20  9:21   ` Will Deacon
2014-06-20 13:23     ` Steve Capper
2014-06-20 18:17   ` Russell King - ARM Linux
2014-06-23 11:17     ` Catalin Marinas
2014-06-23 15:07     ` Steve Capper

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).