qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH v5 00/20] qapi: remove the 'middle' mode


From: Marc-André Lureau
Subject: [Qemu-devel] [PATCH v5 00/20] qapi: remove the 'middle' mode
Date: Wed, 17 Aug 2016 20:57:37 +0400

Hi,

Although some QMP commands are still not fully qapi'fied, it is
possible to use more qapi common and generated code by dropping the
'middle' mode and use qmp_dispatch().

v5:
- replace the dynamic unregister commands approach by a few
  preliminary patches to make the json schema #ifdef conditional and
  per-target
- fix "check invalid arguments" patch based on Markus version
- patch reordering

v4:
- export all marshaller functions (so we can keep calling them after
  middle mode is removed), remove 'export-marshal' patch
- get rid of unnecessary lambda in python code (leftover), remove
  second mcgen(), and outdated comment
- remove disabled commands at run-time to avoid any regression. It's
  now on my TODO list to fix qapi generator in 2.8 to have
  conditionals
- move qmp-commands.txt to doc/
- split the last patch, remove trailing ws
- add QEMU_VERSION_{MAJOR,MINOR,MICRO} patch, simplifying
  qmp_query_version() (could be applied outside this series)
- update commit title/messages/order

v3:
- add a reference to docs/qmp-spec.txt in qmp_capabilities doc
- remove 'props' from device_add doc, improve example
- replace a g_strcmp0 with more appropriate g_str_equal
- add 'export-marshal' command generator key patch
- call qmp_marshal_query_version() directly (also get rid of the need
  to do a make clean, since the qapi json is modified)
- add patch to check invalid arguments on no-args (the old dispatch
  code checks that), and a test
- patch reordering to fix intermediate builds
- commit messages improvements
- split some misc doc fixes in last patch
- add some r-b and rebase

v2:
- rebased on master
- add Since: 0.13 to qmp_capabilities and device_add documentation
- fix device_add doc
- add missing spaces after ',' in get_qmp_greeting()
- fix some grammar in monitor.c while touching it

Marc-André Lureau (20):
  tests: do qmp introspect validation per target
  qapi.py: add a simple #ifdef conditional
  build-sys: make qemu qapi per-target
  build-sys: use config headers to generate qapi
  qapi: configure the schema
  build-sys: define QEMU_VERSION_{MAJOR,MINOR,MICRO}
  qapi-schema: use generated marshaller for 'qmp_capabilities'
  qapi-schema: add 'device_add'
  monitor: simplify invalid_qmp_mode()
  monitor: register gen:false commands manually
  qapi: export the marshallers
  monitor: use qmp_find_command() (using generated qapi code)
  monitor: implement 'qmp_query_commands' without qmp_cmds
  monitor: remove mhandler.cmd_new
  qapi: remove the "middle" mode
  qapi: check invalid arguments on no-args commands
  monitor: use qmp_dispatch()
  build-sys: remove qmp-commands-old.h
  qmp-commands.hx: fix some styling
  Replace qmp-commands.hx by doc/qmp-commands.txt

 hmp.c                                    |    2 +
 monitor.c                                |  415 ++--------
 qmp.c                                    |   48 +-
 stubs/qapi-event.c                       |   74 ++
 tests/qmp-introspect-test.c              |   50 ++
 tests/test-qmp-commands.c                |   15 +
 tests/test-qmp-input-strict.c            |    2 -
 vl.c                                     |    1 +
 Makefile                                 |   61 +-
 Makefile.objs                            |    7 +-
 Makefile.target                          |   32 +-
 scripts/create_config                    |    6 +
 scripts/qapi-commands.py                 |   81 +-
 scripts/qapi.py                          |   43 +-
 stubs/Makefile.objs                      |    1 +
 tests/Makefile.include                   |    2 +
 .gitignore                               |    1 -
 MAINTAINERS                              |    1 -
 docs/qapi-code-gen.txt                   |    6 +-
 qmp-commands.hx => docs/qmp-commands.txt | 1278 +-----------------------------
 docs/writing-qmp-commands.txt            |   46 +-
 hmp-commands-info.hx                     |  120 +--
 hmp-commands.hx                          |  208 ++---
 qapi-schema.json                         |   91 +++
 qapi.mak                                 |   14 +
 qapi/event.json                          |    8 +
 trace-events                             |    1 -
 27 files changed, 667 insertions(+), 1947 deletions(-)
 create mode 100644 stubs/qapi-event.c
 create mode 100644 tests/qmp-introspect-test.c
 rename qmp-commands.hx => docs/qmp-commands.txt (82%)
 create mode 100644 qapi.mak

-- 
2.9.0




reply via email to

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