[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 2/4] s390x: Add missing vcpu reset functions
From: |
David Hildenbrand |
Subject: |
Re: [PATCH v3 2/4] s390x: Add missing vcpu reset functions |
Date: |
Wed, 4 Dec 2019 16:35:30 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.1.1 |
On 04.12.19 16:33, Cornelia Huck wrote:
> On Wed, 4 Dec 2019 16:08:48 +0100
> David Hildenbrand <address@hidden> wrote:
>
>> On 04.12.19 16:07, David Hildenbrand wrote:
>>> On 04.12.19 15:59, Cornelia Huck wrote:
>>>> On Tue, 3 Dec 2019 08:28:11 -0500
>>>> Janosch Frank <address@hidden> wrote:
>>>>
>>>>> Up to now we only had an ioctl to reset vcpu data QEMU couldn't reach
>>>>> for the initial reset, and that was also called for the clear
>>>>> reset. To be architecture compliant, we also need to clear local
>>>>> interrupts on a normal reset.
>>>>
>>>> Do we also need to do something like that for tcg? David?
>>>>
>>>
>>> So, we have
>>>
>>> /* Fields up to this point are not cleared by initial CPU reset */
>>> struct {} start_initial_reset_fields;
>>> [...]
>>> int pending_int
>>> uint16_t external_call_addr;
>>> DECLARE_BITMAP(emergency_signals, S390_MAX_CPUS);
>>> [...]
>>> /* Fields up to this point are cleared by a CPU reset */
>>> struct {} end_reset_fields;
>>>
>>> This means, local interrupts will be cleared by everything that zeroes
>>> "start_initial_reset_fields->end_reset_fields"
>>>
>>> So, they will get cleared by S390_CPU_RESET_INITIAL only if I am not
>>> wrong. In order to clear them on S390_CPU_RESET_NORMAL, we have to
>>> manually set them to zero.
>>
>> Sorry, by S390_CPU_RESET_INITIAL and S390_CPU_RESET_CLEAR.
>
> Ok. Will you cook up a patch, or should I do it?
>
If you want to have some TCG fun, feel free. Otherwise, let me know :)
--
Thanks,
David / dhildenb
- [PATCH v3 3/4] s390x: Fix cpu normal reset ri clearing, (continued)
[PATCH v3 4/4] pc-bios/s390x: Fix reset psw mask, Janosch Frank, 2019/12/03