qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 1/3] qapi/qdev.json: add DEVICE_UNPLUG_ERROR QAPI event


From: Daniel Henrique Barboza
Subject: Re: [PATCH v3 1/3] qapi/qdev.json: add DEVICE_UNPLUG_ERROR QAPI event
Date: Tue, 6 Jul 2021 21:20:08 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0



On 7/5/21 1:52 AM, David Gibson wrote:
On Mon, Jun 21, 2021 at 05:59:05PM -0300, Daniel Henrique Barboza wrote:
At this moment we only provide one event to report a hotunplug error,
MEM_UNPLUG_ERROR. As of Linux kernel 5.12 and QEMU 6.0.0, the pseries
machine is now able to report unplug errors for other device types, such
        as CPUs.

Something seems to have gone weirdly wrong with the formatting here.

I have no idea what happened lol



        Instead of creating a (device_type)_UNPLUG_ERROR for each new device,
        create a generic DEVICE_UNPLUG_ERROR event that can be used by all
        unplug errors in the future.

        With this new generic event, MEM_UNPLUG_ERROR is now marked as 
deprecated.

        Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>

Apart from that
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>

Thanks for the reviews! I'll resend the series (hopefully with the proper
formatting) with your R-bs.



Daniel


        ---
         docs/system/deprecated.rst | 10 ++++++++++
         qapi/machine.json          |  6 +++++-
         qapi/qdev.json             | 27 ++++++++++++++++++++++++++-
         3 files changed, 41 insertions(+), 2 deletions(-)

        diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst
        index e2e0090878..c8200d99d4 100644
        --- a/docs/system/deprecated.rst
        +++ b/docs/system/deprecated.rst
        @@ -192,6 +192,16 @@ The ``I7200`` guest CPU relies on the nanoMIPS 
ISA, which is deprecated
         (the ISA has never been upstreamed to a compiler toolchain). Therefore
         this CPU is also deprecated.
        
        +
        +QEMU API (QAPI) events
        +----------------------
        +
        +``MEM_UNPLUG_ERROR`` (since 6.1)
        +''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        +
        +Use the more generic event ``DEVICE_UNPLUG_ERROR`` instead.
        +
        +
         System emulator machines
         ------------------------
        
        diff --git a/qapi/machine.json b/qapi/machine.json
        index e4d0f9b24f..91dc520734 100644
        --- a/qapi/machine.json
        +++ b/qapi/machine.json
        @@ -1271,6 +1271,9 @@
         #
         # @msg: Informative message
         #
        +# Features:
        +# @deprecated: This event is deprecated. Use @DEVICE_UNPLUG_ERROR 
instead.
        +#
         # Since: 2.4
         #
         # Example:
        @@ -1283,4 +1286,5 @@
         #
         ##
         { 'event': 'MEM_UNPLUG_ERROR',
        -  'data': { 'device': 'str', 'msg': 'str' } }
        +  'data': { 'device': 'str', 'msg': 'str' },
        +  'features': ['deprecated'] }
        diff --git a/qapi/qdev.json b/qapi/qdev.json
        index b83178220b..349d7439fa 100644
        --- a/qapi/qdev.json
        +++ b/qapi/qdev.json
        @@ -84,7 +84,9 @@
         #        This command merely requests that the guest begin the hot 
removal
         #        process.  Completion of the device removal process is 
signaled with a
         #        DEVICE_DELETED event. Guest reset will automatically complete 
removal
        -#        for all devices.
        +#        for all devices. If an error in the hot removal process is 
detected,
        +#        the device will not be removed and a DEVICE_UNPLUG_ERROR 
event is
        +#        sent.
         #
         # Since: 0.14
         #
        @@ -124,3 +126,26 @@
         ##
         { 'event': 'DEVICE_DELETED',
           'data': { '*device': 'str', 'path': 'str' } }
        +
        +##
        +# @DEVICE_UNPLUG_ERROR:
        +#
        +# Emitted when a device hot unplug error occurs.
        +#
        +# @device: device name
        +#
        +# @msg: Informative message
        +#
        +# Since: 6.1
        +#
        +# Example:
        +#
        +# <- { "event": "DEVICE_UNPLUG_ERROR"
        +#      "data": { "device": "dimm1",
        +#                "msg": "Memory hotunplug rejected by the guest for device 
dimm1"
        +#      },
        +#      "timestamp": { "seconds": 1615570772, "microseconds": 202844 } }
        +#
        +##
        +{ 'event': 'DEVICE_UNPLUG_ERROR',
        +  'data': { 'device': 'str', 'msg': 'str' } }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]