diff options
author | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2016-02-04 12:24:46 +0100 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2016-02-23 08:56:17 +0100 |
commit | 007ccec53da35528bd06fa0063da55b1311054c1 (patch) | |
tree | a08ccb42cad189f7a4ca7bee843972a2227128bb /arch/s390/include | |
parent | 2cfc5f9ce7f5e17553e84d36ea9563e677e369d1 (diff) |
s390/pageattr: do a single TLB flush for change_page_attr
The change of the access rights for an address range in the kernel
address space is currently done with a loop of IPTE + a store of the
modified PTE. Between the IPTE and the store the PTE will be invalid,
this intermediate state can cause problems with concurrent accesses.
Consider a change of a kernel area from read-write to read-only, a
concurrent reader of that area should be fine but with the invalid
PTE it might get an unexpected exception.
Remove the IPTEs for each PTE and do a global flush after all PTEs
have been modified.
Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include')
0 files changed, 0 insertions, 0 deletions