[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [qemu-s390x] [PATCH v1] s390x: refactor reset/reipl handling
From: |
David Hildenbrand |
Subject: |
Re: [qemu-s390x] [PATCH v1] s390x: refactor reset/reipl handling |
Date: |
Thu, 21 Jun 2018 18:07:48 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 |
On 21.06.2018 18:04, Cornelia Huck wrote:
> On Thu, 21 Jun 2018 17:49:56 +0200
> Christian Borntraeger <address@hidden> wrote:
>
>> On 04/24/2018 12:18 PM, David Hildenbrand wrote:
>>> Calling pause_all_vcpus()/resume_all_vcpus() from a VCPU thread might
>>> not be the best idea. As pause_all_vcpus() temporarily drops the qemu
>>> mutex, two parallel calls to pause_all_vcpus() can be active at a time,
>>> resulting in a deadlock. (either by two VCPUs or by the main thread and a
>>> VCPU)
>>>
>>> Let's handle it via the main loop instead, as suggested by Paolo. If we
>>> would have two parallel reset requests by two different VCPUs at the
>>> same time, the last one would win.
>>>
>>> We use the existing ipl device to handle it. The nice side effect is
>>> that we can get rid of reipl_requested.
>>>
>>> This change implies that all reset handling now goes via the common
>>> path, so "no-reboot" handling is now active for all kinds of reboots.
>>
>> Ok, this breaks the s390 IPL process when -no-reboot is specified.
>> The bios does a diagnose 308 subcode 1 to jump to the final image while
>> at the same time resetting all devices. This is now blocked with -no-reboot
>> (although it is actually the boot)
>>
>>
>> I have noticed that with virt-install on iso images since virt-install
>> specifies -no-reboot.
>>
>> Something like this seems to help but it is not a nice solution.
>
> It's a bit ugly, but allows us to accommodate the different semantics
> for the different diag subcodes... the -no-reboot parameter is only
> supposed to suppress normal guest reboot requests, right?
The question is if -no-reboot should also be considered for kexec. There
are (at least on x86, not sure about s390x) "fast reboot techniques
using kexec". So it feels like -no-reboot should also apply for kexec.
But definitely not for the BIOS :)
--
Thanks,
David / dhildenb