qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v6 0/6] block: Don't compare strings in bdrv_reopen_prepare()
@ 2017-10-04 15:25 Max Reitz
  2017-10-04 15:25 ` [Qemu-devel] [PATCH v6 1/6] qapi/qnull: Add own header Max Reitz
                   ` (7 more replies)
  0 siblings, 8 replies; 16+ messages in thread
From: Max Reitz @ 2017-10-04 15:25 UTC (permalink / raw)
  To: qemu-block
  Cc: qemu-devel, Max Reitz, Eric Blake, Markus Armbruster, Kevin Wolf

bdrv_reopen_prepare() assumes that all BDS options are strings, which is
not necessarily correct. This series introduces a new qobject_is_equal()
function which can be used to test whether any options have changed,
independently of their type.


v6:
- Patch 2: Added corresponding Coccinelle rule [Eric]
- Patch 6:
  - Added .gitignore entry [Eric]
  - Removed leading underscore [Markus]
  - Replaced test_equality() by check_equal()+check_unequal() [Markus]
  - Put type conversion (or rather non-conversion) tests into an own
    function [Markus]
  - Fixed a line > 80 characters


git-backport-diff against v5:

Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively

001/6:[----] [--] 'qapi/qnull: Add own header'
002/6:[0001] [FC] 'qapi/qlist: Add qlist_append_null() macro'
003/6:[----] [--] 'qapi: Add qobject_is_equal()'
004/6:[----] [--] 'block: qobject_is_equal() in bdrv_reopen_prepare()'
005/6:[----] [--] 'iotests: Add test for non-string option reopening'
006/6:[0097] [FC] 'tests: Add check-qobject for equality tests'


Max Reitz (6):
  qapi/qnull: Add own header
  qapi/qlist: Add qlist_append_null() macro
  qapi: Add qobject_is_equal()
  block: qobject_is_equal() in bdrv_reopen_prepare()
  iotests: Add test for non-string option reopening
  tests: Add check-qobject for equality tests

 tests/Makefile.include           |   4 +-
 include/qapi/qmp/qbool.h         |   1 +
 include/qapi/qmp/qdict.h         |   2 +
 include/qapi/qmp/qlist.h         |   4 +
 include/qapi/qmp/qnull.h         |  32 ++++
 include/qapi/qmp/qnum.h          |   1 +
 include/qapi/qmp/qobject.h       |  21 ++-
 include/qapi/qmp/qstring.h       |   1 +
 include/qapi/qmp/types.h         |   1 +
 block.c                          |  29 ++--
 qapi/qapi-clone-visitor.c        |   1 +
 qapi/string-input-visitor.c      |   1 +
 qobject/qbool.c                  |   8 +
 qobject/qdict.c                  |  29 ++++
 qobject/qlist.c                  |  32 ++++
 qobject/qnull.c                  |  11 +-
 qobject/qnum.c                   |  54 +++++++
 qobject/qobject.c                |  29 ++++
 qobject/qstring.c                |   9 ++
 tests/check-qnull.c              |   2 +-
 tests/check-qobject.c            | 325 +++++++++++++++++++++++++++++++++++++++
 scripts/coccinelle/qobject.cocci |   3 +
 tests/.gitignore                 |   1 +
 tests/qemu-iotests/133           |   9 ++
 tests/qemu-iotests/133.out       |   5 +
 25 files changed, 589 insertions(+), 26 deletions(-)
 create mode 100644 include/qapi/qmp/qnull.h
 create mode 100644 tests/check-qobject.c

-- 
2.13.6

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2017-11-14 15:48 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-04 15:25 [Qemu-devel] [PATCH v6 0/6] block: Don't compare strings in bdrv_reopen_prepare() Max Reitz
2017-10-04 15:25 ` [Qemu-devel] [PATCH v6 1/6] qapi/qnull: Add own header Max Reitz
2017-10-04 15:25 ` [Qemu-devel] [PATCH v6 2/6] qapi/qlist: Add qlist_append_null() macro Max Reitz
2017-10-04 21:06   ` Eric Blake
2017-10-05 10:21   ` [Qemu-devel] [Qemu-block] " Alberto Garcia
2017-10-04 15:25 ` [Qemu-devel] [PATCH v6 3/6] qapi: Add qobject_is_equal() Max Reitz
2017-10-04 15:25 ` [Qemu-devel] [PATCH v6 4/6] block: qobject_is_equal() in bdrv_reopen_prepare() Max Reitz
2017-10-04 15:25 ` [Qemu-devel] [PATCH v6 5/6] iotests: Add test for non-string option reopening Max Reitz
2017-10-04 15:25 ` [Qemu-devel] [PATCH v6 6/6] tests: Add check-qobject for equality tests Max Reitz
2017-10-04 21:18   ` Eric Blake
2017-11-10  9:15   ` Markus Armbruster
2017-11-10  9:16 ` [Qemu-devel] [PATCH v6 0/6] block: Don't compare strings in bdrv_reopen_prepare() Markus Armbruster
2017-11-10 17:36   ` Max Reitz
2017-11-10 17:47     ` Kevin Wolf
2017-11-10 18:06       ` Max Reitz
2017-11-14 15:48 ` Max Reitz

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).