[RFC PATCH v2 11/14] monitor/qmp: Explicit we ignore few QEMUChrEvent in IOEventHandler

Philippe Mathieu-Daudé posted 14 patches 6 years, 1 month ago
Maintainers: "Marc-André Lureau" <marcandre.lureau@redhat.com>, Andrzej Zaborowski <balrogg@gmail.com>, Christian Borntraeger <borntraeger@de.ibm.com>, Antony Pavlov <antonynpavlov@gmail.com>, Thomas Huth <huth@tuxfamily.org>, Markus Armbruster <armbru@redhat.com>, Li Zhijian <lizhijian@cn.fujitsu.com>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>, Laurent Vivier <lvivier@redhat.com>, Fabien Chouteau <chouteau@adacore.com>, Jason Wang <jasowang@redhat.com>, "Dr. David Alan Gilbert" <dgilbert@redhat.com>, Peter Maydell <peter.maydell@linaro.org>, Gerd Hoffmann <kraxel@redhat.com>, Alistair Francis <alistair@alistair23.me>, "Gonglei (Arei)" <arei.gonglei@huawei.com>, KONRAD Frederic <frederic.konrad@adacore.com>, Aleksandar Markovic <amarkovic@wavecomp.com>, Aurelien Jarno <aurelien@aurel32.net>, Corey Minyard <minyard@acm.org>, Paul Burton <pburton@wavecomp.com>, Palmer Dabbelt <palmer@dabbelt.com>, Joel Stanley <joel@jms.id.au>, "Philippe Mathieu-Daudé" <philmd@redhat.com>, Sagar Karandikar <sagark@eecs.berkeley.edu>, Michael Walle <michael@walle.cc>, "Michael S. Tsirkin" <mst@redhat.com>, Alberto Garcia <berto@igalia.com>, Kevin Wolf <kwolf@redhat.com>, Zhang Chen <chen.zhang@intel.com>, Max Reitz <mreitz@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>, Halil Pasic <pasic@linux.ibm.com>, Igor Mitsyanko <i.mitsyanko@gmail.com>, Samuel Thibault <samuel.thibault@ens-lyon.org>, Amit Shah <amit@kernel.org>, "Alex Bennée" <alex.bennee@linaro.org>, Cornelia Huck <cohuck@redhat.com>, Peter Chubb <peter.chubb@nicta.com.au>, Bastian Koppelmann <kbastian@mail.uni-paderborn.de>
[RFC PATCH v2 11/14] monitor/qmp: Explicit we ignore few QEMUChrEvent in IOEventHandler
Posted by Philippe Mathieu-Daudé 6 years, 1 month ago
The Chardev events are listed in the QEMUChrEvent enum. To be
able to use this enum in the IOEventHandler typedef, we need to
explicit all the events ignored by this frontend, to silent the
following GCC warning:

    CC      monitor/qmp.o
  monitor/qmp.c: In function ‘monitor_qmp_event’:
  monitor/qmp.c:345:5: error: enumeration value ‘CHR_EVENT_BREAK’ not handled in switch [-Werror=switch]
    345 |     switch (event) {
        |     ^~~~~~
  monitor/qmp.c:345:5: error: enumeration value ‘CHR_EVENT_MUX_IN’ not handled in switch [-Werror=switch]
  monitor/qmp.c:345:5: error: enumeration value ‘CHR_EVENT_MUX_OUT’ not handled in switch [-Werror=switch]
  cc1: all warnings being treated as errors

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
v2: Add all missing enums

Cc: Markus Armbruster <armbru@redhat.com>
---
 monitor/qmp.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/monitor/qmp.c b/monitor/qmp.c
index b67a8e7d1f..6c46be40f8 100644
--- a/monitor/qmp.c
+++ b/monitor/qmp.c
@@ -365,6 +365,11 @@ static void monitor_qmp_event(void *opaque, int event)
         mon_refcount--;
         monitor_fdsets_cleanup();
         break;
+    case CHR_EVENT_BREAK:
+    case CHR_EVENT_MUX_IN:
+    case CHR_EVENT_MUX_OUT:
+        /* Ignore */
+        break;
     }
 }
 
-- 
2.21.0


Re: [RFC PATCH v2 11/14] monitor/qmp: Explicit we ignore few QEMUChrEvent in IOEventHandler
Posted by Markus Armbruster 6 years, 1 month ago
Philippe Mathieu-Daudé <philmd@redhat.com> writes:

> The Chardev events are listed in the QEMUChrEvent enum. To be
> able to use this enum in the IOEventHandler typedef, we need to
> explicit all the events ignored by this frontend, to silent the
> following GCC warning:
>
>     CC      monitor/qmp.o
>   monitor/qmp.c: In function ‘monitor_qmp_event’:
>   monitor/qmp.c:345:5: error: enumeration value ‘CHR_EVENT_BREAK’ not handled in switch [-Werror=switch]
>     345 |     switch (event) {
>         |     ^~~~~~
>   monitor/qmp.c:345:5: error: enumeration value ‘CHR_EVENT_MUX_IN’ not handled in switch [-Werror=switch]
>   monitor/qmp.c:345:5: error: enumeration value ‘CHR_EVENT_MUX_OUT’ not handled in switch [-Werror=switch]
>   cc1: all warnings being treated as errors
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> v2: Add all missing enums
>
> Cc: Markus Armbruster <armbru@redhat.com>
> ---
>  monitor/qmp.c | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/monitor/qmp.c b/monitor/qmp.c
> index b67a8e7d1f..6c46be40f8 100644
> --- a/monitor/qmp.c
> +++ b/monitor/qmp.c
> @@ -365,6 +365,11 @@ static void monitor_qmp_event(void *opaque, int event)
>          mon_refcount--;
>          monitor_fdsets_cleanup();
>          break;
> +    case CHR_EVENT_BREAK:
> +    case CHR_EVENT_MUX_IN:
> +    case CHR_EVENT_MUX_OUT:
> +        /* Ignore */
> +        break;
>      }
>  }

With the comment dropped:
Reviewed-by: Markus Armbruster <armbru@redhat.com>