linux/arch/s390
Martin Schwidefsky b2fa47e6bf [S390] refactor page table functions for better pgste support
Rework the architecture page table functions to access the bits in the
page table extension array (pgste). There are a number of changes:
1) Fix missing pgste update if the attach_count for the mm is <= 1.
2) For every operation that affects the invalid bit in the pte or the
   rcp byte in the pgste the pcl lock needs to be acquired. The function
   pgste_get_lock gets the pcl lock and returns the current pgste value
   for a pte pointer. The function pgste_set_unlock stores the pgste
   and releases the lock. Between these two calls the bits in the pgste
   can be shuffled.
3) Define two software bits in the pte _PAGE_SWR and _PAGE_SWC to avoid
   calling SetPageDirty and SetPageReferenced from pgtable.h. If the
   host reference backup bit or the host change backup bit has been
   set the dirty/referenced state is transfered to the pte. The common
   code will pick up the state from the pte.
4) Add ptep_modify_prot_start and ptep_modify_prot_commit for mprotect.
5) Remove pgd_populate_kernel, pud_populate_kernel, pmd_populate_kernel
   pgd_clear_kernel, pud_clear_kernel, pmd_clear_kernel and ptep_invalidate.
6) Rename kvm_s390_test_and_clear_page_dirty to
   ptep_test_and_clear_user_dirty and add ptep_test_and_clear_user_young.
7) Define mm_exclusive() and mm_has_pgste() helper to improve readability.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2011-05-23 10:24:31 +02:00
..
appldata [S390] get rid of unused variables 2011-05-23 10:24:28 +02:00
boot Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-03-20 18:14:55 -07:00
crypto Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2011-05-20 17:24:14 -07:00
hypfs [S390] hypfs: Move buffer allocation from open to read 2011-01-05 12:47:27 +01:00
include/asm [S390] refactor page table functions for better pgste support 2011-05-23 10:24:31 +02:00
kernel [S390] convert old cpumask API into new one 2011-05-23 10:24:31 +02:00
kvm [S390] kvm-390: Let kernel exit SIE instruction on work 2011-04-20 10:15:44 +02:00
lib futex: Sanitize futex ops argument types 2011-03-11 12:23:31 +01:00
math-emu s390: change to new flag variable 2011-03-17 14:02:57 +01:00
mm [S390] refactor page table functions for better pgste support 2011-05-23 10:24:31 +02:00
oprofile [S390] oprofile: fix min/max interval query checks 2011-05-10 17:13:43 +02:00
defconfig [S390] Update default configuration 2011-01-12 09:55:24 +01:00
Kbuild [S390] standardize Kbuild rules 2010-10-25 16:10:14 +02:00
Kconfig [S390] Remove data execution protection 2011-05-23 10:24:28 +02:00
Kconfig.debug [S390] Write protect module text and RO data 2011-03-15 17:08:23 +01:00
Makefile [S390] remove redundant stack check option 2011-03-15 17:08:22 +01:00