[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 03/29] target/s390x: implement local-TLB-clea
From: |
Thomas Huth |
Subject: |
Re: [Qemu-devel] [PATCH v2 03/29] target/s390x: implement local-TLB-clearing in IPTE |
Date: |
Tue, 30 May 2017 14:03:14 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0 |
On 30.05.2017 13:18, Aurelien Jarno wrote:
> On 2017-05-30 11:01, Thomas Huth wrote:
>> On 29.05.2017 21:24, Aurelien Jarno wrote:
>>> And at the same time make IPTE SMP aware.
>>>
>>> Signed-off-by: Aurelien Jarno <address@hidden>
>>> ---
>>> target/s390x/helper.h | 2 +-
>>> target/s390x/mem_helper.c | 19 ++++++++++++-------
>>> target/s390x/translate.c | 6 +++++-
>>> 3 files changed, 18 insertions(+), 9 deletions(-)
>> [...]
>>> @@ -1092,13 +1091,19 @@ void HELPER(ipte)(CPUS390XState *env, uint64_t pto,
>>> uint64_t vaddr)
>>>
>>> /* XXX we exploit the fact that Linux passes the exact virtual
>>> address here - it's not obliged to! */
>>> - tlb_flush_page(cs, page);
>>> + /* XXX: the LC bit should be considered as 0 if the local-TLB-clearing
>>> + facility is not installed. */
>>
>> That should be easy, I think:
>>
>> if (!s390_has_feat(S390_FEAT_LOCAL_TLB_CLEARING)) {
>> m4 = 0;
>> }
>
> I agree, it should be easy to implement. The reason I haven't implemented
> it is that we currently don't have a good model for the TCG CPU, so we
> don't have a way to easily enable it or not (though that is changing a
> bit with your later patches). In practice we expose supported features
> through STFL/SFTLE, but we don't do any check to see if the features or
> instructions are enable or not.
OK, fair, ... and your patch clearly marks this spot with an XXX, so we
can revise this later. So:
Reviewed-by: Thomas Huth <address@hidden>
- [Qemu-devel] [PATCH v2 01/29] target/s390x: remove dead code in translate.c, (continued)
- [Qemu-devel] [PATCH v2 01/29] target/s390x: remove dead code in translate.c, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 07/29] target/s390x: implement LOAD PAIR FROM QUADWORD, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 17/29] target/s390x: fix COMPARE LOGICAL LONG EXTENDED, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 16/29] target/s390x: improve 24-bit and 31-bit lengths read/write, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 03/29] target/s390x: implement local-TLB-clearing in IPTE, Aurelien Jarno, 2017/05/29
- Re: [Qemu-devel] [PATCH v2 03/29] target/s390x: implement local-TLB-clearing in IPTE, Richard Henderson, 2017/05/30
- [Qemu-devel] [PATCH v2 10/29] target/s390x: implement MOVE INVERSE, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 20/29] target/s390x: improve MOVE LONG and MOVE LONG EXTENDED, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 11/29] target/s390x: implement MOVE NUMERICS, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 28/29] target/s390x: implement TRANSLATE ONE/TWO TO ONE/TWO, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 13/29] target/s390x: implement MOVE ZONES, Aurelien Jarno, 2017/05/29
- [Qemu-devel] [PATCH v2 02/29] target/s390x: remove some Linux assumptions from IPTE, Aurelien Jarno, 2017/05/29