qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <philmd@linaro.org>
To: qemu-devel@nongnu.org, Markus Armbruster <armbru@redhat.com>
Cc: qemu-block@nongnu.org, qemu-arm@nongnu.org, qemu-ppc@nongnu.org,
	qemu-s390x@nongnu.org,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>
Subject: [PATCH 00/21] qapi: Kill 'qapi/qmp/qerror.h' for good
Date: Wed,  4 Oct 2023 19:31:35 +0200	[thread overview]
Message-ID: <20231004173158.42591-1-philmd@linaro.org> (raw)

Hi,

This is kind of a selfish series. I'm really tired to grep
and read this comment from 2015 in qapi/qmp/qerror.h:
      /*
       * These macros will go away, please don't use
       * in new code, and do not add new ones!
       */

Besides, these definitions are still added in recent code
(see for example commit 09f9ec9913 from June 2023). So
let's finish with this 8 years old technical debt.

Overall it took me 3h: 1h to find the correct Coccinelle
doc about Python use and read it again [*], then 1h to
adapt the script for each patch, rest is testing and
writing comments, so the scripts used could be used as
reference later.

Regards,

Phil.

[*] https://www.lrz.de/services/compute/courses/x_lecturenotes/hspc1w19.pdf

Philippe Mathieu-Daudé (21):
  qapi: Inline and remove QERR_BUS_NO_HOTPLUG definition
  qapi: Inline and remove QERR_DEVICE_HAS_NO_MEDIUM definition
  qapi: Inline and remove QERR_DEVICE_IN_USE definition
  qapi: Inline and remove QERR_DEVICE_NO_HOTPLUG definition
  qapi: Inline QERR_INVALID_PARAMETER definition (constant parameter)
  qapi: Inline and remove QERR_INVALID_PARAMETER definition
  qapi: Inline QERR_INVALID_PARAMETER_TYPE definition (constant param)
  qapi: Inline QERR_INVALID_PARAMETER_TYPE definition (constant value)
  qapi: Inline and remove QERR_INVALID_PARAMETER_TYPE definition
  qapi: Inline QERR_INVALID_PARAMETER_VALUE definition (constant value)
  qapi: Inline QERR_INVALID_PARAMETER_VALUE definition (constant param)
  qapi: Inline and remove QERR_INVALID_PARAMETER_VALUE definition
  qapi: Inline and remove QERR_IO_ERROR definition
  qapi: Inline and remove QERR_MIGRATION_ACTIVE definition
  qapi: Inline QERR_MISSING_PARAMETER definition (constant parameter)
  qapi: Inline and remove QERR_MISSING_PARAMETER definition
  qapi: Inline and remove QERR_PROPERTY_VALUE_BAD definition
  qapi: Inline and remove QERR_PROPERTY_VALUE_OUT_OF_RANGE definition
  qapi: Inline and remove QERR_QGA_COMMAND_FAILED  definition
  RFC qapi: Inline and remove QERR_UNSUPPORTED definition
  qapi: Remove 'qapi/qmp/qerror.h' header

 qga/qapi-schema.json             |  5 +-
 include/qapi/qmp/qerror.h        | 62 --------------------
 backends/cryptodev-vhost-user.c  |  5 +-
 backends/dbus-vmstate.c          |  3 +-
 backends/rng-egd.c               |  5 +-
 backends/rng-random.c            |  4 +-
 block/gluster.c                  | 22 +++----
 block/monitor/block-hmp-cmds.c   |  7 +--
 block/quorum.c                   |  4 +-
 block/snapshot.c                 |  5 +-
 block/vmdk.c                     |  9 ++-
 blockdev.c                       | 16 +++---
 blockjob.c                       |  4 +-
 chardev/char-fe.c                |  3 +-
 chardev/char.c                   |  4 +-
 dump/dump.c                      | 11 ++--
 dump/win_dump.c                  |  5 +-
 hw/core/qdev-properties-system.c |  6 +-
 hw/core/qdev-properties.c        |  3 +-
 hw/core/qdev.c                   |  4 +-
 hw/intc/openpic.c                |  4 +-
 hw/ppc/spapr_pci.c               |  5 +-
 hw/usb/redirect.c                |  7 +--
 migration/migration.c            |  7 +--
 migration/options.c              | 99 +++++++++++++-------------------
 migration/page_cache.c           |  9 ++-
 migration/ram.c                  |  5 +-
 migration/savevm.c               |  7 +--
 monitor/fds.c                    |  9 ++-
 monitor/hmp-cmds.c               |  3 +-
 monitor/qmp-cmds.c               |  4 +-
 net/filter-buffer.c              |  4 +-
 net/filter.c                     |  8 +--
 net/net.c                        | 10 ++--
 qapi/opts-visitor.c              | 12 ++--
 qapi/qapi-forward-visitor.c      |  3 +-
 qapi/qapi-util.c                 |  4 +-
 qapi/qapi-visit-core.c           |  5 +-
 qapi/qobject-input-visitor.c     | 53 ++++++++---------
 qapi/string-input-visitor.c      | 27 ++++-----
 qga/commands-bsd.c               |  9 ++-
 qga/commands-posix.c             | 47 ++++++++-------
 qga/commands-win32.c             | 65 ++++++++++-----------
 qga/commands.c                   | 10 ++--
 qom/object.c                     | 16 ++++--
 qom/object_interfaces.c          |  3 +-
 qom/qom-qmp-cmds.c               |  8 +--
 softmmu/balloon.c                |  3 +-
 softmmu/cpus.c                   |  8 +--
 softmmu/qdev-monitor.c           | 24 ++++----
 softmmu/rtc.c                    |  1 -
 softmmu/tpm.c                    |  8 +--
 softmmu/vl.c                     |  5 +-
 target/arm/arm-qmp-cmds.c        |  4 +-
 target/i386/cpu.c                | 15 +++--
 target/s390x/cpu_models_sysemu.c |  4 +-
 ui/input-barrier.c               |  3 +-
 ui/ui-qmp-cmds.c                 |  7 +--
 util/block-helpers.c             |  4 +-
 util/qemu-option.c               | 21 ++++---
 scripts/qapi/visit.py            |  5 +-
 61 files changed, 305 insertions(+), 437 deletions(-)
 delete mode 100644 include/qapi/qmp/qerror.h

-- 
2.41.0



             reply	other threads:[~2023-10-04 17:33 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-04 17:31 Philippe Mathieu-Daudé [this message]
2023-10-04 17:31 ` [PATCH 01/21] qapi: Inline and remove QERR_BUS_NO_HOTPLUG definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 02/21] qapi: Inline and remove QERR_DEVICE_HAS_NO_MEDIUM definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 03/21] qapi: Inline and remove QERR_DEVICE_IN_USE definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 04/21] qapi: Inline and remove QERR_DEVICE_NO_HOTPLUG definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 05/21] qapi: Inline QERR_INVALID_PARAMETER definition (constant parameter) Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 06/21] qapi: Inline and remove QERR_INVALID_PARAMETER definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 07/21] qapi: Inline QERR_INVALID_PARAMETER_TYPE definition (constant param) Philippe Mathieu-Daudé
2023-10-04 17:37   ` Thomas Huth
2023-10-04 17:31 ` [PATCH 08/21] qapi: Inline QERR_INVALID_PARAMETER_TYPE definition (constant value) Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 09/21] qapi: Inline and remove QERR_INVALID_PARAMETER_TYPE definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 10/21] qapi: Inline QERR_INVALID_PARAMETER_VALUE definition (constant value) Philippe Mathieu-Daudé
2023-10-04 18:15   ` Juan Quintela
2023-10-05  4:27     ` Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 11/21] qapi: Inline QERR_INVALID_PARAMETER_VALUE definition (constant param) Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 12/21] qapi: Inline and remove QERR_INVALID_PARAMETER_VALUE definition Philippe Mathieu-Daudé
2023-10-04 22:04   ` Stefan Berger
2023-10-04 17:31 ` [PATCH 13/21] qapi: Inline and remove QERR_IO_ERROR definition Philippe Mathieu-Daudé
2023-10-04 18:15   ` Juan Quintela
2023-10-04 17:31 ` [PATCH 14/21] qapi: Inline and remove QERR_MIGRATION_ACTIVE definition Philippe Mathieu-Daudé
2023-10-04 18:15   ` Juan Quintela
2023-10-04 17:31 ` [PATCH 15/21] qapi: Inline QERR_MISSING_PARAMETER definition (constant parameter) Philippe Mathieu-Daudé
2023-10-04 22:05   ` Stefan Berger
2023-10-04 17:31 ` [PATCH 16/21] qapi: Inline and remove QERR_MISSING_PARAMETER definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 17/21] qapi: Inline and remove QERR_PROPERTY_VALUE_BAD definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 18/21] qapi: Inline and remove QERR_PROPERTY_VALUE_OUT_OF_RANGE definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 19/21] qapi: Inline and remove QERR_QGA_COMMAND_FAILED definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [RFC PATCH 20/21] qapi: Inline and remove QERR_UNSUPPORTED definition Philippe Mathieu-Daudé
2023-10-04 17:31 ` [PATCH 21/21] qapi: Remove 'qapi/qmp/qerror.h' header Philippe Mathieu-Daudé
2023-10-04 18:16   ` Juan Quintela

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231004173158.42591-1-philmd@linaro.org \
    --to=philmd@linaro.org \
    --cc=armbru@redhat.com \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).