[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] ipmi: chassis poweroff should use qemu_system_s
From: |
Cédric Le Goater |
Subject: |
Re: [Qemu-devel] [PATCH] ipmi: chassis poweroff should use qemu_system_shutdown_request() |
Date: |
Tue, 30 Aug 2016 15:43:16 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 |
On 08/30/2016 03:16 AM, Corey Minyard wrote:
> On 08/28/2016 03:44 PM, Greg Kurz wrote:
>> On Fri, 26 Aug 2016 18:05:31 +0200
>> Cédric Le Goater <address@hidden> wrote:
>>
>>> When issuing a chassis 'powerdown' control command, the routine
>>> qemu_system_shutdown_request() should be used to exit the guest.
>>> qemu_system_powerdown_request() will initiate a soft shutdown which is
>>> not what is required by the IPMI (28.3 Chassis Control Command):
>>>
>>> 0h = power down. Force system into soft off (S4/S45) state. This
>>> is for 'emergency' management power down actions. The command does
>>> not initiate a clean shut-down of the operating system prior to
>>> powering down the system
>>> Signed-off-by: Cédric Le Goater <address@hidden>
>>> ---
>>>
>> FWIW this had been suggested during the review:
>>
>> https://lists.gnu.org/archive/html/qemu-devel/2015-11/msg03304.html
>
> I think I misread that when I did this originally. Yes, you are right.
>
> Acked-by: Corey Minyard <address@hidden>
>
> Can this go in now, or do I need to pull it into my tree?
So we should ask Peter or Michael for that. no ?
I think is 2.8 material unless we have some more time for 2.7.
Thanks,
C.
>
> -corey
>
>> Acked-by: Greg Kurz <address@hidden>
>>
>>> We could use qemu_system_powerdown_request() under
>>> IPMI_SHUTDOWN_VIA_ACPI_OVERTEMP which is what is expected I think.
>>>
>> 5h = Initiate a soft-shutdown of OS via ACPI by emulating a fatal
>> overtemperature. (optional)
>>
>> This looks appropriate indeed.
>>
>>> hw/ipmi/ipmi.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/hw/ipmi/ipmi.c b/hw/ipmi/ipmi.c
>>> index f09f217e7835..f91c7b74ca38 100644
>>> --- a/hw/ipmi/ipmi.c
>>> +++ b/hw/ipmi/ipmi.c
>>> @@ -51,7 +51,7 @@ static int ipmi_do_hw_op(IPMIInterface *s, enum ipmi_op
>>> op, int checkonly)
>>> if (checkonly) {
>>> return 0;
>>> }
>>> - qemu_system_powerdown_request();
>>> + qemu_system_shutdown_request();
>>> return 0;
>>> case IPMI_SEND_NMI:
>
>