WSL2-Linux-Kernel/arch/s390/mm
Christian Borntraeger 97ca7bfc19 s390/mm: set change and reference bit on lazy key enablement
When we enable storage keys for a guest lazily, we reset the ACC and F
values. That is correct assuming that these are 0 on a clear reset and
the guest obviously has not used any key setting instruction.

We also zero out the change and reference bit. This is not correct as
the architecture prefers over-indication instead of under-indication
for the keyless->keyed transition.

This patch fixes the behaviour and always sets guest change and guest
reference for all guest storage keys on the keyless -> keyed switch.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Claudio Imbrenda <imbrenda@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2017-07-13 11:28:29 +02:00
..
Makefile s390/extable: use generic search and sort routines 2016-03-22 15:36:02 -07:00
cmm.c s390: mm: Audit and remove any unnecessary uses of module.h 2017-02-17 07:40:35 +01:00
dump_pagetables.c s390/mm: implement 5 level pages tables 2017-06-12 16:25:54 +02:00
extmem.c s390: mm: Audit and remove any unnecessary uses of module.h 2017-02-17 07:40:35 +01:00
fault.c s390/fault: use _ASCE_ORIGIN instead of PAGE_MASK 2017-06-12 16:25:59 +02:00
gmap.c s390/mm: add __rcu annotations 2017-06-12 16:25:55 +02:00
gup.c s390/mm: implement 5 level pages tables 2017-06-12 16:25:54 +02:00
hugetlbpage.c mm/hugetlb: add size parameter to huge_pte_offset() 2017-07-06 16:24:34 -07:00
init.c mm, memory_hotplug: replace for_device by want_memblock in arch_add_memory 2017-07-06 16:24:32 -07:00
maccess.c s390/maccess: reduce stnsm instructions 2016-02-17 09:05:04 +01:00
mem_detect.c s390: mm: Audit and remove any unnecessary uses of module.h 2017-02-17 07:40:35 +01:00
mmap.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux 2017-07-03 15:39:36 -07:00
page-states.c s390/kvm: Add PGSTE manipulation functions 2017-04-20 13:33:08 +02:00
pageattr.c s390/mm: implement 5 level pages tables 2017-06-12 16:25:54 +02:00
pgalloc.c s390/mm: implement 5 level pages tables 2017-06-12 16:25:54 +02:00
pgtable.c s390/mm: set change and reference bit on lazy key enablement 2017-07-13 11:28:29 +02:00
vmem.c s390/mm: implement 5 level pages tables 2017-06-12 16:25:54 +02:00