aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/include/asm/tlbflush.h
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2016-07-26 16:53:09 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2017-07-25 06:55:30 +0200
commit118bd31bea2cdb7f1dbf22dd9a58e818b5313156 (patch)
tree9cf58dc2b2841369698dcca4483f4244b5e58d3b /arch/s390/include/asm/tlbflush.h
parents390/mm: tag normal pages vs pages used in page tables (diff)
downloadlinux-dev-118bd31bea2cdb7f1dbf22dd9a58e818b5313156.tar.xz
linux-dev-118bd31bea2cdb7f1dbf22dd9a58e818b5313156.zip
s390/mm: add no-dat TLB flush optimization
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/include/asm/tlbflush.h')
-rw-r--r--arch/s390/include/asm/tlbflush.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/s390/include/asm/tlbflush.h b/arch/s390/include/asm/tlbflush.h
index 39846100682a..38d82ed60345 100644
--- a/arch/s390/include/asm/tlbflush.h
+++ b/arch/s390/include/asm/tlbflush.h
@@ -20,10 +20,13 @@ static inline void __tlb_flush_local(void)
*/
static inline void __tlb_flush_idte(unsigned long asce)
{
+ unsigned long opt;
+
+ opt = IDTE_PTOA;
/* Global TLB flush for the mm */
asm volatile(
" .insn rrf,0xb98e0000,0,%0,%1,0"
- : : "a" (2048), "a" (asce) : "cc");
+ : : "a" (opt), "a" (asce) : "cc");
}
#ifdef CONFIG_SMP