[PULL v2 00/28] QAPI patches patches for 2022-10-25

Markus Armbruster posted 28 patches 1 year, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20221026183532.487708-1-armbru@redhat.com
Maintainers: Gerd Hoffmann <kraxel@redhat.com>, Christian Schoenebeck <qemu_oss@crudebyte.com>, Stefan Berger <stefanb@linux.vnet.ibm.com>, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, John Snow <jsnow@redhat.com>, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>, Eric Blake <eblake@redhat.com>, Xie Yongji <xieyongji@bytedance.com>, Markus Armbruster <armbru@redhat.com>, Stefan Hajnoczi <stefanha@redhat.com>, Alberto Garcia <berto@igalia.com>, Ilya Dryomov <idryomov@gmail.com>, Peter Lieven <pl@kamp.de>, "Richard W.M. Jones" <rjones@redhat.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, "Daniel P. Berrangé" <berrange@redhat.com>, Michael Roth <michael.roth@amd.com>, "Michael S. Tsirkin" <mst@redhat.com>, Igor Mammedov <imammedo@redhat.com>, Ani Sinha <ani@anisinha.ca>, Eduardo Habkost <eduardo@habkost.net>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Yanan Wang <wangyanan55@huawei.com>, David Hildenbrand <david@redhat.com>, Xiao Guangrong <xiaoguangrong.eric@gmail.com>, Jiri Pirko <jiri@resnulli.us>, Jason Wang <jasowang@redhat.com>, Daniel Henrique Barboza <danielhb413@gmail.com>, "Cédric Le Goater" <clg@kaod.org>, David Gibson <david@gibson.dropbear.id.au>, Greg Kurz <groug@kaod.org>, Fam Zheng <fam@euphon.net>, Juan Quintela <quintela@redhat.com>, "Dr. David Alan Gilbert" <dgilbert@redhat.com>, Hailiang Zhang <zhanghailiang@xfusion.com>, Samuel Thibault <samuel.thibault@ens-lyon.org>, Stefan Weil <sw@weilnetz.de>, Konstantin Kostiuk <kkostiuk@redhat.com>, Pavel Dovgalyuk <pavel.dovgaluk@ispras.ru>, Peter Maydell <peter.maydell@linaro.org>, Richard Henderson <richard.henderson@linaro.org>, Cornelia Huck <cohuck@redhat.com>, Thomas Huth <thuth@redhat.com>, Alexander Bulekov <alxndr@bu.edu>, Bandan Das <bsd@redhat.com>, Darren Kenny <darren.kenny@oracle.com>, Qiuhao Li <Qiuhao.Li@outlook.com>, Laurent Vivier <lvivier@redhat.com>
docs/devel/qapi-code-gen.rst             |  29 +++++-
docs/devel/writing-monitor-commands.rst  |  14 +--
include/monitor/monitor.h                |   3 +-
audio/alsaaudio.c                        |   2 +-
audio/audio.c                            |   6 +-
audio/audio_legacy.c                     |  17 ++-
audio/ossaudio.c                         |   8 +-
audio/paaudio.c                          |  12 +--
audio/wavaudio.c                         |   2 +-
backends/tpm/tpm_passthrough.c           |   2 -
block/block-backend.c                    |   2 +-
block/copy-before-write.c                |   2 +-
block/dirty-bitmap.c                     |   1 -
block/export/export.c                    |   2 +-
block/export/vduse-blk.c                 |   3 +-
block/gluster.c                          |   3 -
block/monitor/block-hmp-cmds.c           |  48 ++++-----
block/qapi-sysemu.c                      |  73 +++++--------
block/qapi.c                             |  62 ++++-------
block/qcow.c                             |  10 +-
block/qcow2.c                            |  18 ++--
block/qed.c                              |   2 +-
block/quorum.c                           |   2 +-
block/rbd.c                              |  17 ++-
block/ssh.c                              |   2 +-
blockdev-nbd.c                           |   9 +-
blockdev.c                               | 173 ++++++++++++-------------------
blockjob.c                               |   2 -
chardev/char-file.c                      |   4 +-
chardev/char-socket.c                    |  10 +-
chardev/char-udp.c                       |   1 -
chardev/char.c                           |   6 +-
crypto/block-luks.c                      |  16 +--
dump/dump.c                              |   4 +-
hw/acpi/core.c                           |  14 +--
hw/acpi/cpu.c                            |   1 -
hw/acpi/memory_hotplug.c                 |   3 +-
hw/core/machine-hmp-cmds.c               |   2 +-
hw/core/machine-qmp-cmds.c               |   9 +-
hw/core/machine.c                        |  10 +-
hw/core/numa.c                           |   8 +-
hw/core/qdev.c                           |   2 +-
hw/mem/pc-dimm.c                         |   1 -
hw/net/rocker/rocker_of_dpa.c            |  13 +--
hw/net/virtio-net.c                      |   3 +-
hw/nvram/fw_cfg.c                        |   2 +-
hw/pci/pci.c                             |   2 -
hw/ppc/spapr.c                           |   2 +-
hw/ppc/spapr_drc.c                       |   3 +-
hw/virtio/virtio-mem-pci.c               |   4 +-
hw/virtio/virtio-pmem-pci.c              |   1 -
hw/virtio/virtio.c                       |   1 -
job-qmp.c                                |   3 +-
migration/block-dirty-bitmap.c           |   4 +-
migration/colo.c                         |   1 -
migration/migration.c                    |  27 ++---
monitor/hmp-cmds.c                       |  84 +++++++--------
monitor/misc.c                           |  21 ++--
monitor/qmp-cmds.c                       |  11 +-
nbd/server.c                             |   2 +-
net/announce.c                           |   8 +-
net/hub.c                                |   2 +-
net/l2tpv3.c                             |   2 +-
net/net.c                                |  25 +++--
net/slirp.c                              |   4 +-
net/socket.c                             |  18 ++--
net/tap-win32.c                          |   2 +-
net/tap.c                                |  51 +++++----
qemu-img.c                               |  13 ++-
qemu-nbd.c                               |   2 -
qga/commands-posix.c                     |  33 ++----
qga/commands-win32.c                     |  40 ++-----
qga/commands.c                           |  11 +-
qom/qom-qmp-cmds.c                       |   7 +-
replay/replay-debugging.c                |   1 -
softmmu/runstate.c                       |  18 +---
softmmu/vl.c                             |   2 +-
stubs/qdev.c                             |   6 +-
target/arm/monitor.c                     |   1 -
target/i386/cpu-sysemu.c                 |   7 +-
target/i386/cpu.c                        |   1 -
target/s390x/cpu_models_sysemu.c         |   1 -
tests/qtest/fuzz/qos_fuzz.c              |   3 +-
tests/qtest/qmp-cmd-test.c               |   2 +-
tests/unit/test-char.c                   |   1 -
tests/unit/test-crypto-block.c           |   6 --
tests/unit/test-qmp-cmds.c               |  26 +++--
tests/unit/test-qmp-event.c              |   4 +-
tests/unit/test-qobject-input-visitor.c  |   2 +-
tests/unit/test-qobject-output-visitor.c |   2 -
tests/unit/test-visitor-serialization.c  |   3 +-
ui/console.c                             |   4 +-
ui/input.c                               |   4 +-
ui/spice-core.c                          |   5 -
ui/vnc.c                                 |  10 --
util/qemu-config.c                       |  17 +--
scripts/qapi/commands.py                 |   9 +-
scripts/qapi/events.py                   |   3 +-
scripts/qapi/gen.py                      |   2 +-
scripts/qapi/schema.py                   |  14 +++
scripts/qapi/types.py                    |   2 +-
scripts/qapi/visit.py                    |  17 ++-
102 files changed, 471 insertions(+), 721 deletions(-)
[PULL v2 00/28] QAPI patches patches for 2022-10-25
Posted by Markus Armbruster 1 year, 6 months ago
The following changes since commit e750a7ace492f0b450653d4ad368a77d6f660fb8:

  Merge tag 'pull-9p-20221024' of https://github.com/cschoenebeck/qemu into staging (2022-10-24 14:27:12 -0400)

are available in the Git repository at:

  https://repo.or.cz/qemu/armbru.git tags/pull-qapi-2022-10-25-v2

for you to fetch changes up to c0f24f8f31ca82e34ef037bfe34ef71eeecb401d:

  qapi: Drop temporary logic to support conversion step by step (2022-10-26 20:08:52 +0200)

----------------------------------------------------------------
QAPI patches patches for 2022-10-25

----------------------------------------------------------------
Markus Armbruster (28):
      docs/devel/qapi-code-gen: Update example to match current code
      qapi: Tidy up whitespace in generated code
      docs/devel/qapi-code-gen: Extend example for next commit's change
      qapi: Start to elide redundant has_FOO in generated C
      qapi tests: Elide redundant has_FOO in generated C
      qapi acpi: Elide redundant has_FOO in generated C
      qapi audio: Elide redundant has_FOO in generated C
      qapi block: Elide redundant has_FOO in generated C
      qapi chardev: Elide redundant has_FOO in generated C
      qapi crypto: Elide redundant has_FOO in generated C
      qapi dump: Elide redundant has_FOO in generated C
      qapi job: Elide redundant has_FOO in generated C
      qapi machine: Elide redundant has_FOO in generated C
      qapi migration: Elide redundant has_FOO in generated C
      qapi misc: Elide redundant has_FOO in generated C
      qapi net: Elide redundant has_FOO in generated C
      qapi pci: Elide redundant has_FOO in generated C
      qapi qdev qom: Elide redundant has_FOO in generated C
      qapi replay: Elide redundant has_FOO in generated C
      qapi rocker: Elide redundant has_FOO in generated C
      qapi run-state: Elide redundant has_FOO in generated C
      qapi stats: Elide redundant has_FOO in generated C
      qapi tpm: Elide redundant has_FOO in generated C
      qapi transaction: Elide redundant has_FOO in generated C
      qapi ui: Elide redundant has_FOO in generated C
      qapi virtio: Elide redundant has_FOO in generated C
      qapi qga: Elide redundant has_FOO in generated C
      qapi: Drop temporary logic to support conversion step by step

 docs/devel/qapi-code-gen.rst             |  29 +++++-
 docs/devel/writing-monitor-commands.rst  |  14 +--
 include/monitor/monitor.h                |   3 +-
 audio/alsaaudio.c                        |   2 +-
 audio/audio.c                            |   6 +-
 audio/audio_legacy.c                     |  17 ++-
 audio/ossaudio.c                         |   8 +-
 audio/paaudio.c                          |  12 +--
 audio/wavaudio.c                         |   2 +-
 backends/tpm/tpm_passthrough.c           |   2 -
 block/block-backend.c                    |   2 +-
 block/copy-before-write.c                |   2 +-
 block/dirty-bitmap.c                     |   1 -
 block/export/export.c                    |   2 +-
 block/export/vduse-blk.c                 |   3 +-
 block/gluster.c                          |   3 -
 block/monitor/block-hmp-cmds.c           |  48 ++++-----
 block/qapi-sysemu.c                      |  73 +++++--------
 block/qapi.c                             |  62 ++++-------
 block/qcow.c                             |  10 +-
 block/qcow2.c                            |  18 ++--
 block/qed.c                              |   2 +-
 block/quorum.c                           |   2 +-
 block/rbd.c                              |  17 ++-
 block/ssh.c                              |   2 +-
 blockdev-nbd.c                           |   9 +-
 blockdev.c                               | 173 ++++++++++++-------------------
 blockjob.c                               |   2 -
 chardev/char-file.c                      |   4 +-
 chardev/char-socket.c                    |  10 +-
 chardev/char-udp.c                       |   1 -
 chardev/char.c                           |   6 +-
 crypto/block-luks.c                      |  16 +--
 dump/dump.c                              |   4 +-
 hw/acpi/core.c                           |  14 +--
 hw/acpi/cpu.c                            |   1 -
 hw/acpi/memory_hotplug.c                 |   3 +-
 hw/core/machine-hmp-cmds.c               |   2 +-
 hw/core/machine-qmp-cmds.c               |   9 +-
 hw/core/machine.c                        |  10 +-
 hw/core/numa.c                           |   8 +-
 hw/core/qdev.c                           |   2 +-
 hw/mem/pc-dimm.c                         |   1 -
 hw/net/rocker/rocker_of_dpa.c            |  13 +--
 hw/net/virtio-net.c                      |   3 +-
 hw/nvram/fw_cfg.c                        |   2 +-
 hw/pci/pci.c                             |   2 -
 hw/ppc/spapr.c                           |   2 +-
 hw/ppc/spapr_drc.c                       |   3 +-
 hw/virtio/virtio-mem-pci.c               |   4 +-
 hw/virtio/virtio-pmem-pci.c              |   1 -
 hw/virtio/virtio.c                       |   1 -
 job-qmp.c                                |   3 +-
 migration/block-dirty-bitmap.c           |   4 +-
 migration/colo.c                         |   1 -
 migration/migration.c                    |  27 ++---
 monitor/hmp-cmds.c                       |  84 +++++++--------
 monitor/misc.c                           |  21 ++--
 monitor/qmp-cmds.c                       |  11 +-
 nbd/server.c                             |   2 +-
 net/announce.c                           |   8 +-
 net/hub.c                                |   2 +-
 net/l2tpv3.c                             |   2 +-
 net/net.c                                |  25 +++--
 net/slirp.c                              |   4 +-
 net/socket.c                             |  18 ++--
 net/tap-win32.c                          |   2 +-
 net/tap.c                                |  51 +++++----
 qemu-img.c                               |  13 ++-
 qemu-nbd.c                               |   2 -
 qga/commands-posix.c                     |  33 ++----
 qga/commands-win32.c                     |  40 ++-----
 qga/commands.c                           |  11 +-
 qom/qom-qmp-cmds.c                       |   7 +-
 replay/replay-debugging.c                |   1 -
 softmmu/runstate.c                       |  18 +---
 softmmu/vl.c                             |   2 +-
 stubs/qdev.c                             |   6 +-
 target/arm/monitor.c                     |   1 -
 target/i386/cpu-sysemu.c                 |   7 +-
 target/i386/cpu.c                        |   1 -
 target/s390x/cpu_models_sysemu.c         |   1 -
 tests/qtest/fuzz/qos_fuzz.c              |   3 +-
 tests/qtest/qmp-cmd-test.c               |   2 +-
 tests/unit/test-char.c                   |   1 -
 tests/unit/test-crypto-block.c           |   6 --
 tests/unit/test-qmp-cmds.c               |  26 +++--
 tests/unit/test-qmp-event.c              |   4 +-
 tests/unit/test-qobject-input-visitor.c  |   2 +-
 tests/unit/test-qobject-output-visitor.c |   2 -
 tests/unit/test-visitor-serialization.c  |   3 +-
 ui/console.c                             |   4 +-
 ui/input.c                               |   4 +-
 ui/spice-core.c                          |   5 -
 ui/vnc.c                                 |  10 --
 util/qemu-config.c                       |  17 +--
 scripts/qapi/commands.py                 |   9 +-
 scripts/qapi/events.py                   |   3 +-
 scripts/qapi/gen.py                      |   2 +-
 scripts/qapi/schema.py                   |  14 +++
 scripts/qapi/types.py                    |   2 +-
 scripts/qapi/visit.py                    |  17 ++-
 102 files changed, 471 insertions(+), 721 deletions(-)

-- 
2.37.3
Re: [PULL v2 00/28] QAPI patches patches for 2022-10-25
Posted by Stefan Hajnoczi 1 year, 6 months ago
On Wed, 26 Oct 2022 at 14:44, Markus Armbruster <armbru@redhat.com> wrote:
>
> The following changes since commit e750a7ace492f0b450653d4ad368a77d6f660fb8:
>
>   Merge tag 'pull-9p-20221024' of https://github.com/cschoenebeck/qemu into staging (2022-10-24 14:27:12 -0400)
>
> are available in the Git repository at:
>
>   https://repo.or.cz/qemu/armbru.git tags/pull-qapi-2022-10-25-v2
>
> for you to fetch changes up to c0f24f8f31ca82e34ef037bfe34ef71eeecb401d:
>
>   qapi: Drop temporary logic to support conversion step by step (2022-10-26 20:08:52 +0200)
>
> ----------------------------------------------------------------
> QAPI patches patches for 2022-10-25
>
> ----------------------------------------------------------------
> Markus Armbruster (28):
>       docs/devel/qapi-code-gen: Update example to match current code
>       qapi: Tidy up whitespace in generated code
>       docs/devel/qapi-code-gen: Extend example for next commit's change
>       qapi: Start to elide redundant has_FOO in generated C
>       qapi tests: Elide redundant has_FOO in generated C
>       qapi acpi: Elide redundant has_FOO in generated C
>       qapi audio: Elide redundant has_FOO in generated C
>       qapi block: Elide redundant has_FOO in generated C

This commit breaks qemu-iotests 056 in CI. I have included
instructions for reproducing it locally below. I will drop this pull
request for now. Please note that the QEMU 7.2 soft freeze is on
Tuesday.

$ ./configure --target-list=x86_64-softmmu --disable-tcg
--audio-drv-list="" --with-coroutine=ucontext && make
$ (cd build && tests/qemu-iotests/check -qcow2 056)
$ coredumpctl debug
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>,
signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007f23b81f3c73 in __pthread_kill_internal (signo=6,
threadid=<optimized out>) at pthread_kill.c:78
#2  0x00007f23b81a3986 in __GI_raise (sig=sig@entry=6) at
../sysdeps/posix/raise.c:26
#3  0x00007f23b818d7f4 in __GI_abort () at abort.c:79
#4  0x00007f23b81e7d5e in __libc_message
(action=action@entry=do_abort, fmt=fmt@entry=0x7f23b831f87c "%s\n") at
../sysdeps/posix/libc_fatal.c:155
#5  0x00007f23b81fd95c in malloc_printerr
(str=str@entry=0x7f23b8321ed0 "munmap_chunk(): invalid pointer") at
malloc.c:5659
#6  0x00007f23b81fdbdc in munmap_chunk (p=<optimized out>) at malloc.c:3055
#7  0x00007f23b820214a in __GI___libc_free
(mem=mem@entry=0x560ca9395354) at malloc.c:3376
#8  0x00007f23b9794b8d in g_free (mem=0x560ca9395354) at ../glib/gmem.c:218
#9  0x0000560ca920bf81 in qapi_dealloc_type_str (v=<optimized out>,
name=<optimized out>, obj=<optimized out>, errp=<optimized out>) at
../qapi/qapi-dealloc-visitor.c:68
#10 0x0000560ca920f1ac in visit_type_str (v=v@entry=0x560cacb85000,
name=name@entry=0x560ca93bde6c "format", obj=obj@entry=0x7ffe123a1480,
errp=errp@entry=0x0)
    at ../qapi/qapi-visit-core.c:349
#11 0x0000560ca919ae8a in visit_type_DriveBackup_members
(v=v@entry=0x560cacb85000, obj=obj@entry=0x7ffe123a1420,
errp=errp@entry=0x0) at qapi/qapi-visit-block-core.c:2401
#12 0x0000560ca91acee1 in qmp_marshal_drive_backup (args=<optimized
out>, ret=<optimized out>, errp=<optimized out>) at
qapi/qapi-commands-block-core.c:464
#13 0x0000560ca9213299 in do_qmp_dispatch_bh (opaque=0x7f23b2bc3ea0)
at ../qapi/qmp-dispatch.c:128
#14 0x0000560ca922efa5 in aio_bh_call (bh=0x560cabee1dd0) at ../util/async.c:150
#15 aio_bh_poll (ctx=ctx@entry=0x560cabc83300) at ../util/async.c:178
#16 0x0000560ca921c9be in aio_dispatch (ctx=0x560cabc83300) at
../util/aio-posix.c:421
#17 0x0000560ca922ec0e in aio_ctx_dispatch (source=<optimized out>,
callback=<optimized out>, user_data=<optimized out>) at
../util/async.c:320
#18 0x00007f23b9792faf in g_main_dispatch (context=0x560cabc83c60) at
../glib/gmain.c:3417
#19 g_main_context_dispatch (context=0x560cabc83c60) at ../glib/gmain.c:4135
#20 0x0000560ca923b028 in glib_pollfds_poll () at ../util/main-loop.c:297
#21 os_host_main_loop_wait (timeout=0) at ../util/main-loop.c:320
#22 main_loop_wait (nonblocking=nonblocking@entry=0) at ../util/main-loop.c:596
#23 0x0000560ca8f0ce07 in qemu_main_loop () at ../softmmu/runstate.c:734
#24 0x0000560ca8d45c96 in qemu_default_main () at ../softmmu/main.c:37
#25 0x00007f23b818e510 in __libc_start_call_main
(main=main@entry=0x560ca8d41050 <main>, argc=argc@entry=20,
argv=argv@entry=0x7ffe123a1808) at
../sysdeps/nptl/libc_start_call_main.h:58
#26 0x00007f23b818e5c9 in __libc_start_main_impl
     (main=0x560ca8d41050 <main>, argc=20, argv=0x7ffe123a1808,
init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7ffe123a17f8) at ../csu/libc-start.c:389
#27 0x0000560ca8d45bc5 in _start ()
(gdb) up
#1  0x00007f23b81f3c73 in __pthread_kill_internal (signo=6,
threadid=<optimized out>) at pthread_kill.c:78
78      return __pthread_kill_implementation (threadid, signo, 0);
(gdb) up
#2  0x00007f23b81a3986 in __GI_raise (sig=sig@entry=6) at
../sysdeps/posix/raise.c:26
Downloading 0.00 MB source file
/usr/src/debug/glibc-2.35-20.fc36.x86_64/signal/../sysdeps/posix/raise.c
26      int ret = __pthread_kill (__pthread_self (), sig);
(gdb) up
#3  0x00007f23b818d7f4 in __GI_abort () at abort.c:79
Downloading 0.00 MB source file
/usr/src/debug/glibc-2.35-20.fc36.x86_64/stdlib/abort.c
79          raise (SIGABRT);
(gdb) up
#4  0x00007f23b81e7d5e in __libc_message
(action=action@entry=do_abort, fmt=fmt@entry=0x7f23b831f87c "%s\n") at
../sysdeps/posix/libc_fatal.c:155
Downloading 0.00 MB source file
/usr/src/debug/glibc-2.35-20.fc36.x86_64/libio/../sysdeps/posix/libc_fatal.c
155        abort ();
(gdb) up
#5  0x00007f23b81fd95c in malloc_printerr
(str=str@entry=0x7f23b8321ed0 "munmap_chunk(): invalid pointer") at
malloc.c:5659
Downloading 0.05 MB source file
/usr/src/debug/glibc-2.35-20.fc36.x86_64/malloc/malloc.c
5659      __libc_message (do_abort, "%s\n", str);
(gdb) up
#6  0x00007f23b81fdbdc in munmap_chunk (p=<optimized out>) at malloc.c:3055
3055        malloc_printerr ("munmap_chunk(): invalid pointer");
(gdb) up
#7  0x00007f23b820214a in __GI___libc_free
(mem=mem@entry=0x560ca9395354) at malloc.c:3376
3376          munmap_chunk (p);
(gdb) up
#8  0x00007f23b9794b8d in g_free (mem=0x560ca9395354) at ../glib/gmem.c:218
Downloading 0.00 MB source file
/usr/src/debug/glib2-2.72.3-1.fc36.x86_64/redhat-linux-build/../glib/gmem.c
218      free (mem);
(gdb) up
#9  0x0000560ca920bf81 in qapi_dealloc_type_str (v=<optimized out>,
name=<optimized out>, obj=<optimized out>, errp=<optimized out>) at
../qapi/qapi-dealloc-visitor.c:68
68            g_free(*obj);
(gdb) up
#10 0x0000560ca920f1ac in visit_type_str (v=v@entry=0x560cacb85000,
name=name@entry=0x560ca93bde6c "format", obj=obj@entry=0x7ffe123a1480,
errp=errp@entry=0x0)
    at ../qapi/qapi-visit-core.c:349
349        ok = v->type_str(v, name, obj, errp);
(gdb) up
#11 0x0000560ca919ae8a in visit_type_DriveBackup_members
(v=v@entry=0x560cacb85000, obj=obj@entry=0x7ffe123a1420,
errp=errp@entry=0x0) at qapi/qapi-visit-block-core.c:2401
2401            if (!visit_type_str(v, "format", &obj->format, errp)) {
(gdb) p *obj
$1 = {job_id = 0x0, device = 0x560cacb99c10 "\031\365&\313\tV", sync =
MIRROR_SYNC_MODE_NONE, has_speed = false, speed = 0, bitmap = 0x0,
has_bitmap_mode = false,
  bitmap_mode = BITMAP_SYNC_MODE_ON_SUCCESS, has_compress = false,
compress = false, has_on_source_error = false, on_source_error =
BLOCKDEV_ON_ERROR_REPORT, has_on_target_error = false,
  on_target_error = BLOCKDEV_ON_ERROR_REPORT, has_auto_finalize =
false, auto_finalize = true, has_auto_dismiss = false, auto_dismiss =
true, filter_node_name = 0x0, x_perf = 0x0,
  target = 0x560cabf01930 "\301\070r\314\tV", format = 0x560ca9395354
"qcow2", has_mode = false, mode = NEW_IMAGE_MODE_ABSOLUTE_PATHS}
Re: [PULL v2 00/28] QAPI patches patches for 2022-10-25
Posted by Markus Armbruster 1 year, 6 months ago
Stefan Hajnoczi <stefanha@gmail.com> writes:

> On Wed, 26 Oct 2022 at 14:44, Markus Armbruster <armbru@redhat.com> wrote:
>>
>> The following changes since commit e750a7ace492f0b450653d4ad368a77d6f660fb8:
>>
>>   Merge tag 'pull-9p-20221024' of https://github.com/cschoenebeck/qemu into staging (2022-10-24 14:27:12 -0400)
>>
>> are available in the Git repository at:
>>
>>   https://repo.or.cz/qemu/armbru.git tags/pull-qapi-2022-10-25-v2
>>
>> for you to fetch changes up to c0f24f8f31ca82e34ef037bfe34ef71eeecb401d:
>>
>>   qapi: Drop temporary logic to support conversion step by step (2022-10-26 20:08:52 +0200)
>>
>> ----------------------------------------------------------------
>> QAPI patches patches for 2022-10-25
>>
>> ----------------------------------------------------------------
>> Markus Armbruster (28):
>>       docs/devel/qapi-code-gen: Update example to match current code
>>       qapi: Tidy up whitespace in generated code
>>       docs/devel/qapi-code-gen: Extend example for next commit's change
>>       qapi: Start to elide redundant has_FOO in generated C
>>       qapi tests: Elide redundant has_FOO in generated C
>>       qapi acpi: Elide redundant has_FOO in generated C
>>       qapi audio: Elide redundant has_FOO in generated C
>>       qapi block: Elide redundant has_FOO in generated C
>
> This commit breaks qemu-iotests 056 in CI. I have included
> instructions for reproducing it locally below. I will drop this pull
> request for now. Please note that the QEMU 7.2 soft freeze is on
> Tuesday.

I finally managed to debug this one.  I think a v3 is best.  And then
we'll see whether the series can still go in, or needs to wait for the
next cycle.

Thanks!
Re: [PULL v2 00/28] QAPI patches patches for 2022-10-25
Posted by Stefan Hajnoczi 1 year, 6 months ago
When you resend the pull request, please fold in this fix:

diff --cc audio/sndioaudio.c
index 7c45276d36,7c45276d36..6d4386af88
--- a/audio/sndioaudio.c
+++ b/audio/sndioaudio.c
@@@ -333,7 -333,7 +333,7 @@@ static int sndio_init(SndioVoice *self
      unsigned int nch;
      int i, nfds;

--    dev_name = opts->has_dev ? opts->dev : SIO_DEVANY;
++    dev_name = opts->dev ? opts->dev : SIO_DEVANY;
      latency = opts->has_latency ? opts->latency : SNDIO_LATENCY_US;

      /* open the device in non-blocking mode */