[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 7/8] target/s390x: Allow to enable "idtes" featur
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH v3 7/8] target/s390x: Allow to enable "idtes" feature for TCG |
Date: |
Mon, 10 Jul 2017 10:45:20 -1000 |
From: David Hildenbrand <address@hidden>
STFL bit 4 and 5 are just indications to the guest, which TLB entries an
IDTE call will clear. These are performance indicators for the guest.
STFL bit 4:
INVALIDATE DAT TABLE ENTRY (IDTE) performs
the invalidation-and-clearing operation by
selectively clearing TLB segment-table entries
when a segment-table entry or entries are
invalidated. IDTE also performs the clearing-by-
ASCE operation. Unless bit 4 is one, IDTE simply
purges all TLBs. Bit 3 is one if bit 4 is one.
We can simply set STFL bit 4 ("idtes") and still purge the complete TLB.
Purging more than advertised is never bad. E.g. Linux doesn't even care
about this bit. We can optimized this later.
This is helpful, as the z9 base model contains this facility.
STFL bit 5 (clearing TLB region-table-entries) was never implemented on
real HW, therefore we can simply ignore it for now.
Signed-off-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
---
target/s390x/cpu_models.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/target/s390x/cpu_models.c b/target/s390x/cpu_models.c
index a4afdd9..998bb96 100644
--- a/target/s390x/cpu_models.c
+++ b/target/s390x/cpu_models.c
@@ -728,6 +728,7 @@ static void add_qemu_cpu_model_features(S390FeatBitmap fbm)
{
static const int feats[] = {
S390_FEAT_DAT_ENH,
+ S390_FEAT_IDTE_SEGMENT,
S390_FEAT_STFLE,
S390_FEAT_EXTENDED_IMMEDIATE,
S390_FEAT_EXTENDED_TRANSLATION_2,
--
2.9.4
[Qemu-devel] [PATCH v3 6/8] target/s390x: Mark ETF3 and ETF3_ENH facilities as available, Richard Henderson, 2017/07/10
[Qemu-devel] [PATCH v3 7/8] target/s390x: Allow to enable "idtes" feature for TCG,
Richard Henderson <=
[Qemu-devel] [PATCH v3 3/8] target/s390x: Tidy SRST, Richard Henderson, 2017/07/10
[Qemu-devel] [PATCH v3 4/8] target/s390x: Implement SRSTU, Richard Henderson, 2017/07/10
[Qemu-devel] [PATCH v3 5/8] target/s390x: Implement TRTR, Richard Henderson, 2017/07/10
[Qemu-devel] [PATCH v3 8/8] target/s390x: Fix risbg handling, Richard Henderson, 2017/07/10