mbox

[PULL,v4,00/24] block: Command line option -blockdev

Message ID 1488900045-26344-1-git-send-email-armbru@redhat.com
State New
Headers show

Pull-request

git://repo.or.cz/qemu/armbru.git tags/pull-block-2017-02-28-v4

Message

Markus Armbruster March 7, 2017, 3:20 p.m. UTC
Actually, the command line option is the least part of this series.
Its bulk is about building infrastructure and getting errors out of
the JSON parser.

The design of the command line interface was discussed here:
Subject: Non-flat command line option argument syntax
Message-ID: <87bmukmlau.fsf@dusky.pond.sub.org>
https://lists.gnu.org/archive/html/qemu-devel/2017-02/msg00555.html

v4: PATCH 03: One-liner to placate clang sanitizer
v3: A few commit messages touched up, code unchanged

The following changes since commit ff79d5e939c38677a575e3493eb9b4d36eb21865:

  Merge remote-tracking branch 'remotes/xtensa/tags/20170306-xtensa' into staging (2017-03-07 09:57:14 +0000)

are available in the git repository at:

  git://repo.or.cz/qemu/armbru.git tags/pull-block-2017-02-28-v4

for you to fetch changes up to 0b2c1beea4358e40d1049b8ee019408ce96b37ce:

  keyval: Support lists (2017-03-07 16:07:48 +0100)

----------------------------------------------------------------
block: Command line option -blockdev

----------------------------------------------------------------
Daniel P. Berrange (1):
      qapi: qobject input visitor variant for use with keyval_parse()

Markus Armbruster (23):
      test-qemu-opts: Cover qemu_opts_parse() of "no"
      tests: Fix gcov-files-test-qemu-opts-y, gcov-files-test-logging-y
      keyval: New keyval_parse()
      test-keyval: Cover use with qobject input visitor
      qapi: Factor out common part of qobject input visitor creation
      qapi: Factor out common qobject_input_get_keyval()
      qobject: Propagate parse errors through qobject_from_jsonv()
      libqtest: Fix qmp() & friends to abort on JSON parse errors
      qjson: Abort earlier on qobject_from_jsonf() misuse
      test-qobject-input-visitor: Abort earlier on bad test input
      qobject: Propagate parse errors through qobject_from_json()
      block: More detailed syntax error reporting for JSON filenames
      check-qjson: Test errors from qobject_from_json()
      test-visitor-serialization: Pass &error_abort to qobject_from_json()
      monitor: Assert qmp_schema_json[] is sane
      test-qapi-util: New, covering qapi/qapi-util.c
      qapi: New parse_qapi_name()
      keyval: Restrict key components to valid QAPI names
      qapi: New qobject_input_visitor_new_str() for convenience
      block: Initial implementation of -blockdev
      qapi: Improve how keyval input visitor reports unexpected dicts
      docs/qapi-code-gen.txt: Clarify naming rules
      keyval: Support lists

 block.c                              |   9 +-
 docs/qapi-code-gen.txt               |  61 ++--
 include/qapi/qmp/qjson.h             |   5 +-
 include/qapi/qobject-input-visitor.h |  21 ++
 include/qapi/util.h                  |   2 +
 include/qemu/option.h                |   3 +
 monitor.c                            |   2 +-
 qapi/qapi-util.c                     |  47 +++
 qapi/qobject-input-visitor.c         | 214 +++++++++++-
 qemu-options.hx                      |   7 +
 qobject/qjson.c                      |  14 +-
 tests/.gitignore                     |   2 +
 tests/Makefile.include               |  10 +-
 tests/check-qjson.c                  |  88 +++--
 tests/libqtest.c                     |   3 +-
 tests/test-keyval.c                  | 624 +++++++++++++++++++++++++++++++++++
 tests/test-qapi-util.c               |  85 +++++
 tests/test-qemu-opts.c               |   5 +
 tests/test-qobject-input-visitor.c   | 190 ++++++++++-
 tests/test-visitor-serialization.c   |   2 +-
 util/Makefile.objs                   |   1 +
 util/keyval.c                        | 394 ++++++++++++++++++++++
 vl.c                                 |  39 +++
 23 files changed, 1746 insertions(+), 82 deletions(-)
 create mode 100644 tests/test-keyval.c
 create mode 100644 tests/test-qapi-util.c
 create mode 100644 util/keyval.c

Comments

no-reply@patchew.org March 7, 2017, 3:39 p.m. UTC | #1
Hi,

This series seems to have some coding style problems. See output below for
more information:

Message-id: 1488900045-26344-1-git-send-email-armbru@redhat.com
Subject: [Qemu-devel] [PULL v4 00/24] block: Command line option -blockdev
Type: series

=== TEST SCRIPT BEGIN ===
#!/bin/bash

BASE=base
n=1
total=$(git log --oneline $BASE.. | wc -l)
failed=0

# Useful git options
git config --local diff.renamelimit 0
git config --local diff.renames True

commits="$(git log --format=%H --reverse $BASE..)"
for c in $commits; do
    echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..."
    if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then
        failed=1
        echo
    fi
    n=$((n+1))
done

exit $failed
=== TEST SCRIPT END ===

Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384
From https://github.com/patchew-project/qemu
 * [new tag]         patchew/1488900045-26344-1-git-send-email-armbru@redhat.com -> patchew/1488900045-26344-1-git-send-email-armbru@redhat.com
Switched to a new branch 'test'
a762f0b keyval: Support lists
f9e119d docs/qapi-code-gen.txt: Clarify naming rules
27d2f4a qapi: Improve how keyval input visitor reports unexpected dicts
b259a30 block: Initial implementation of -blockdev
169369f qapi: New qobject_input_visitor_new_str() for convenience
04bd4f4 keyval: Restrict key components to valid QAPI names
5c3a0b3 qapi: New parse_qapi_name()
fe52ce6 test-qapi-util: New, covering qapi/qapi-util.c
c437200 monitor: Assert qmp_schema_json[] is sane
e7779af test-visitor-serialization: Pass &error_abort to qobject_from_json()
c7d70ed check-qjson: Test errors from qobject_from_json()
e7d42c2 block: More detailed syntax error reporting for JSON filenames
0256923 qobject: Propagate parse errors through qobject_from_json()
5495ad2 test-qobject-input-visitor: Abort earlier on bad test input
5d4e20d qjson: Abort earlier on qobject_from_jsonf() misuse
b59c1b6 libqtest: Fix qmp() & friends to abort on JSON parse errors
3edcbb6 qobject: Propagate parse errors through qobject_from_jsonv()
d7cfe83 qapi: Factor out common qobject_input_get_keyval()
a7b8e19 qapi: Factor out common part of qobject input visitor creation
8b55a3f test-keyval: Cover use with qobject input visitor
bd21190 qapi: qobject input visitor variant for use with keyval_parse()
f4a007f keyval: New keyval_parse()
0f3a585 tests: Fix gcov-files-test-qemu-opts-y, gcov-files-test-logging-y
1bcf7a9 test-qemu-opts: Cover qemu_opts_parse() of "no"

=== OUTPUT BEGIN ===
Checking PATCH 1/24: test-qemu-opts: Cover qemu_opts_parse() of "no"...
Checking PATCH 2/24: tests: Fix gcov-files-test-qemu-opts-y, gcov-files-test-logging-y...
Checking PATCH 3/24: keyval: New keyval_parse()...
ERROR: suspect code indent for conditional statements (8, 8)
#438: FILE: util/keyval.c:140:
+        for (len = 0; s + len < key_end && s[len] != '.'; len++) {
+        }

total: 1 errors, 0 warnings, 447 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

Checking PATCH 4/24: qapi: qobject input visitor variant for use with keyval_parse()...
Checking PATCH 5/24: test-keyval: Cover use with qobject input visitor...
Checking PATCH 6/24: qapi: Factor out common part of qobject input visitor creation...
Checking PATCH 7/24: qapi: Factor out common qobject_input_get_keyval()...
Checking PATCH 8/24: qobject: Propagate parse errors through qobject_from_jsonv()...
Checking PATCH 9/24: libqtest: Fix qmp() & friends to abort on JSON parse errors...
Checking PATCH 10/24: qjson: Abort earlier on qobject_from_jsonf() misuse...
Checking PATCH 11/24: test-qobject-input-visitor: Abort earlier on bad test input...
Checking PATCH 12/24: qobject: Propagate parse errors through qobject_from_json()...
Checking PATCH 13/24: block: More detailed syntax error reporting for JSON filenames...
Checking PATCH 14/24: check-qjson: Test errors from qobject_from_json()...
Checking PATCH 15/24: test-visitor-serialization: Pass &error_abort to qobject_from_json()...
Checking PATCH 16/24: monitor: Assert qmp_schema_json[] is sane...
Checking PATCH 17/24: test-qapi-util: New, covering qapi/qapi-util.c...
Checking PATCH 18/24: qapi: New parse_qapi_name()...
Checking PATCH 19/24: keyval: Restrict key components to valid QAPI names...
Checking PATCH 20/24: qapi: New qobject_input_visitor_new_str() for convenience...
Checking PATCH 21/24: block: Initial implementation of -blockdev...
Checking PATCH 22/24: qapi: Improve how keyval input visitor reports unexpected dicts...
Checking PATCH 23/24: docs/qapi-code-gen.txt: Clarify naming rules...
Checking PATCH 24/24: keyval: Support lists...
ERROR: spaces required around that '-' (ctx:VxV)
#444: FILE: util/keyval.c:345:
+    assert(!elt[nelt-1]);       /* need the sentinel to be null */
                     ^

total: 1 errors, 0 warnings, 420 lines checked

Your patch has style problems, please review.  If any of these errors
are false positives report them to the maintainer, see
CHECKPATCH in MAINTAINERS.

=== OUTPUT END ===

Test command exited with code: 1


---
Email generated automatically by Patchew [http://patchew.org/].
Please send your feedback to patchew-devel@freelists.org
Peter Maydell March 8, 2017, 9:47 a.m. UTC | #2
On 7 March 2017 at 16:20, Markus Armbruster <armbru@redhat.com> wrote:
> Actually, the command line option is the least part of this series.
> Its bulk is about building infrastructure and getting errors out of
> the JSON parser.
>
> The design of the command line interface was discussed here:
> Subject: Non-flat command line option argument syntax
> Message-ID: <87bmukmlau.fsf@dusky.pond.sub.org>
> https://lists.gnu.org/archive/html/qemu-devel/2017-02/msg00555.html
>
> v4: PATCH 03: One-liner to placate clang sanitizer
> v3: A few commit messages touched up, code unchanged
>
> The following changes since commit ff79d5e939c38677a575e3493eb9b4d36eb21865:
>
>   Merge remote-tracking branch 'remotes/xtensa/tags/20170306-xtensa' into staging (2017-03-07 09:57:14 +0000)
>
> are available in the git repository at:
>
>   git://repo.or.cz/qemu/armbru.git tags/pull-block-2017-02-28-v4
>
> for you to fetch changes up to 0b2c1beea4358e40d1049b8ee019408ce96b37ce:
>
>   keyval: Support lists (2017-03-07 16:07:48 +0100)
>


Applied, thanks.

-- PMM