History log of /openbmc/qemu/qapi/ (Results 1501 – 1525 of 1710)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
32c18a2d16-Nov-2015 Matt Gingell <gingell@google.com>

kvm: add support for -machine kernel_irqchip=split

This patch adds the initial plumbing for split IRQ chip mode via
KVM_CAP_SPLIT_IRQCHIP. In addition to option processing, a number of
kvm_*_in_kern

kvm: add support for -machine kernel_irqchip=split

This patch adds the initial plumbing for split IRQ chip mode via
KVM_CAP_SPLIT_IRQCHIP. In addition to option processing, a number of
kvm_*_in_kernel macros are defined to help clarify which component is
where.

Signed-off-by: Matt Gingell <gingell@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...


/openbmc/qemu/VERSION
/openbmc/qemu/audio/coreaudio.c
/openbmc/qemu/default-configs/i386-softmmu.mak
/openbmc/qemu/default-configs/x86_64-softmmu.mak
/openbmc/qemu/docs/specs/fw_cfg.txt
/openbmc/qemu/exec.c
/openbmc/qemu/hw/acpi/aml-build.c
/openbmc/qemu/hw/arm/fsl-imx25.c
/openbmc/qemu/hw/arm/fsl-imx31.c
/openbmc/qemu/hw/arm/virt-acpi-build.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/display/omap_lcd_template.h
/openbmc/qemu/hw/display/pxa2xx_lcd.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/dma/soc_dma.c
/openbmc/qemu/hw/gpio/imx_gpio.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/misc/Makefile.objs
/openbmc/qemu/hw/misc/hyperv_testdev.c
/openbmc/qemu/hw/misc/imx25_ccm.c
/openbmc/qemu/hw/misc/imx31_ccm.c
/openbmc/qemu/hw/misc/imx_ccm.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/scsi/vmw_pvscsi.c
/openbmc/qemu/hw/timer/imx_epit.c
/openbmc/qemu/hw/timer/imx_gpt.c
/openbmc/qemu/hw/usb/dev-mtp.c
/openbmc/qemu/hw/usb/hcd-ehci.c
/openbmc/qemu/include/exec/ram_addr.h
/openbmc/qemu/include/hw/acpi/aml-build.h
/openbmc/qemu/include/hw/arm/fsl-imx25.h
/openbmc/qemu/include/hw/arm/fsl-imx31.h
/openbmc/qemu/include/hw/arm/virt.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/compat.h
/openbmc/qemu/include/hw/gpio/imx_gpio.h
/openbmc/qemu/include/hw/misc/imx25_ccm.h
/openbmc/qemu/include/hw/misc/imx31_ccm.h
/openbmc/qemu/include/hw/misc/imx_ccm.h
/openbmc/qemu/include/hw/nvram/fw_cfg.h
/openbmc/qemu/include/hw/timer/imx_epit.h
/openbmc/qemu/include/hw/timer/imx_gpt.h
/openbmc/qemu/include/standard-headers/asm-x86/hyperv.h
/openbmc/qemu/include/standard-headers/linux/input-event-codes.h
/openbmc/qemu/include/standard-headers/linux/input.h
/openbmc/qemu/include/standard-headers/linux/pci_regs.h
/openbmc/qemu/include/standard-headers/linux/virtio_gpu.h
/openbmc/qemu/include/sysemu/kvm.h
/openbmc/qemu/kvm-all.c
/openbmc/qemu/linux-headers/asm-arm64/kvm.h
/openbmc/qemu/linux-headers/asm-powerpc/unistd.h
/openbmc/qemu/linux-headers/asm-s390/kvm.h
/openbmc/qemu/linux-headers/asm-s390/unistd.h
/openbmc/qemu/linux-headers/asm-x86/unistd_32.h
/openbmc/qemu/linux-headers/asm-x86/unistd_64.h
/openbmc/qemu/linux-headers/asm-x86/unistd_x32.h
/openbmc/qemu/linux-headers/linux/kvm.h
/openbmc/qemu/linux-headers/linux/psci.h
/openbmc/qemu/memory.c
common.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/scripts/qapi.py
/openbmc/qemu/scripts/update-linux-headers.sh
/openbmc/qemu/target-arm/cpu.c
/openbmc/qemu/target-arm/helper-a64.c
/openbmc/qemu/target-arm/helper.c
/openbmc/qemu/target-arm/internals.h
/openbmc/qemu/target-arm/kvm.c
/openbmc/qemu/target-arm/kvm32.c
/openbmc/qemu/target-arm/kvm64.c
/openbmc/qemu/target-arm/kvm_arm.h
/openbmc/qemu/target-arm/op_helper.c
/openbmc/qemu/target-arm/translate.c
/openbmc/qemu/target-i386/Makefile.objs
/openbmc/qemu/target-i386/cpu-qom.h
/openbmc/qemu/target-i386/cpu.c
/openbmc/qemu/target-i386/cpu.h
/openbmc/qemu/target-i386/hyperv.c
/openbmc/qemu/target-i386/hyperv.h
/openbmc/qemu/target-i386/kvm.c
/openbmc/qemu/target-i386/machine.c
/openbmc/qemu/tests/Makefile
/openbmc/qemu/tests/guest-debug/test-gdbstub.py
/openbmc/qemu/tests/qapi-schema/alternate-clash.err
/openbmc/qemu/tests/qapi-schema/args-member-case.err
/openbmc/qemu/tests/qapi-schema/args-member-case.exit
/openbmc/qemu/tests/qapi-schema/args-member-case.json
/openbmc/qemu/tests/qapi-schema/args-member-case.out
/openbmc/qemu/tests/qapi-schema/base-cycle-direct.err
/openbmc/qemu/tests/qapi-schema/base-cycle-direct.exit
/openbmc/qemu/tests/qapi-schema/base-cycle-direct.json
/openbmc/qemu/tests/qapi-schema/base-cycle-direct.out
/openbmc/qemu/tests/qapi-schema/base-cycle-indirect.err
/openbmc/qemu/tests/qapi-schema/base-cycle-indirect.exit
/openbmc/qemu/tests/qapi-schema/base-cycle-indirect.json
/openbmc/qemu/tests/qapi-schema/base-cycle-indirect.out
/openbmc/qemu/tests/qapi-schema/enum-clash-member.err
/openbmc/qemu/tests/qapi-schema/enum-clash-member.json
/openbmc/qemu/tests/qapi-schema/enum-member-case.err
/openbmc/qemu/tests/qapi-schema/enum-member-case.exit
/openbmc/qemu/tests/qapi-schema/enum-member-case.json
/openbmc/qemu/tests/qapi-schema/enum-member-case.out
/openbmc/qemu/tests/qapi-schema/flat-union-clash-member.err
/openbmc/qemu/tests/qapi-schema/struct-base-clash-deep.err
/openbmc/qemu/tests/qapi-schema/struct-base-clash.err
/openbmc/qemu/tests/qapi-schema/union-branch-case.err
/openbmc/qemu/tests/qapi-schema/union-branch-case.exit
/openbmc/qemu/tests/qapi-schema/union-branch-case.json
/openbmc/qemu/tests/qapi-schema/union-branch-case.out
/openbmc/qemu/tests/qapi-schema/union-clash-branches.err
/openbmc/qemu/tests/qapi-schema/union-clash-branches.json
/openbmc/qemu/trace-events
29637a6e01-Dec-2015 Eric Blake <eblake@redhat.com>

qapi: Shorter visits of optional fields

For less code, reflect the determined boolean value of an optional
visit back to the caller instead of making the caller read the
boolean after the fact.

The

qapi: Shorter visits of optional fields

For less code, reflect the determined boolean value of an optional
visit back to the caller instead of making the caller read the
boolean after the fact.

The resulting generated code has the following diff:

|- visit_optional(v, &has_fdset_id, "fdset-id");
|- if (has_fdset_id) {
|+ if (visit_optional(v, &has_fdset_id, "fdset-id")) {
| visit_type_int(v, &fdset_id, "fdset-id", &err);
| if (err) {
| goto out;
| }
| }

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1449033659-25497-10-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

5cdc883101-Dec-2015 Eric Blake <eblake@redhat.com>

qapi: Simplify visits of optional fields

None of the visitor callbacks would set an error when testing
if an optional field was present; make this part of the interface
contract by eliminating the e

qapi: Simplify visits of optional fields

None of the visitor callbacks would set an error when testing
if an optional field was present; make this part of the interface
contract by eliminating the errp argument.

The resulting generated code has a nice diff:

|- visit_optional(v, &has_fdset_id, "fdset-id", &err);
|- if (err) {
|- goto out;
|- }
|+ visit_optional(v, &has_fdset_id, "fdset-id");
| if (has_fdset_id) {
| visit_type_int(v, &fdset_id, "fdset-id", &err);
| if (err) {
| goto out;
| }
| }

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1449033659-25497-9-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

d00341af01-Dec-2015 Eric Blake <eblake@redhat.com>

qapi: Fix alternates that accept 'number' but not 'int'

The QMP input visitor allows integral values to be assigned by
promotion to a QTYPE_QFLOAT. However, when parsing an alternate,
we did not ta

qapi: Fix alternates that accept 'number' but not 'int'

The QMP input visitor allows integral values to be assigned by
promotion to a QTYPE_QFLOAT. However, when parsing an alternate,
we did not take this into account, such that an alternate that
accepts 'number' and some other type, but not 'int', would reject
integral values.

With this patch, we now have the following desirable table:

alternate has case selected for
'int' 'number' QTYPE_QINT QTYPE_QFLOAT
no no error error
no yes 'number' 'number'
yes no 'int' error
yes yes 'int' 'number'

While it is unlikely that we will ever use 'number' in an
alternate other than in the testsuite, it never hurts to be
more precise in what we allow.

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1449033659-25497-8-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

0426d53c01-Dec-2015 Eric Blake <eblake@redhat.com>

qapi: Simplify visiting of alternate types

Previously, working with alternates required two lookup arrays
and some indirection: for type Foo, we created Foo_qtypes[]
which maps each qtype to a value

qapi: Simplify visiting of alternate types

Previously, working with alternates required two lookup arrays
and some indirection: for type Foo, we created Foo_qtypes[]
which maps each qtype to a value of the generated FooKind enum,
then look up that value in FooKind_lookup[] like we do for other
union types.

This has a couple of subtle bugs. First, the generator was
creating a call with a parameter '(int *) &(*obj)->type' where
type is an enum type; this is unsafe if the compiler chooses
to store the enum type in a different size than int, where
assigning through the wrong size pointer can corrupt data or
cause a SIGBUS.

Related bug, not not fixed in this patch: qapi-visit.py's
gen_visit_enum() generates a cast of its enum * argument to
int *. Marked FIXME.

Second, since the values of the FooKind enum start at zero, all
entries of the Foo_qtypes[] array that were not explicitly
initialized will map to the same branch of the union as the
first member of the alternate, rather than triggering a desired
failure in visit_get_next_type(). Fortunately, the bug seldom
bites; the very next thing the input visitor does is try to
parse the incoming JSON with the wrong parser, which normally
fails; the output visitor is not used with a C struct in that
state, and the dealloc visitor has nothing to clean up (so
there is no leak).

However, the second bug IS observable in one case: parsing an
integer causes unusual behavior in an alternate that contains
at least a 'number' member but no 'int' member, because the
'number' parser accepts QTYPE_QINT in addition to the expected
QTYPE_QFLOAT (that is, since 'int' is not a member, the type
QTYPE_QINT accidentally maps to FooKind 0; if this enum value
is the 'number' branch the integer parses successfully, but if
the 'number' branch is not first, some other branch tries to
parse the integer and rejects it). A later patch will worry
about fixing alternates to always parse all inputs that a
non-alternate 'number' would accept, for now this is still
marked FIXME in the updated test-qmp-input-visitor.c, to
merely point out that new undesired behavior of 'ans' matches
the existing undesired behavior of 'asn'.

This patch fixes the default-initialization bug by deleting the
indirection, and modifying get_next_type() to directly assign a
QTypeCode parameter. This in turn fixes the type-casting bug,
as we are no longer casting a pointer to enum to a questionable
size. There is no longer a need to generate an implicit FooKind
enum associated with the alternate type (since the QMP wire
format never uses the stringized counterparts of the C union
member names). Since the updated visit_get_next_type() does not
know which qtypes are expected, the generated visitor is
modified to generate an error statement if an unexpected type is
encountered.

Callers now have to know the QTYPE_* mapping when looking at the
discriminator; but so far, only the testsuite was even using the
C struct of an alternate types. I considered the possibility of
keeping the internal enum FooKind, but initialized differently
than most generated arrays, as in:
typedef enum FooKind {
FOO_KIND_A = QTYPE_QDICT,
FOO_KIND_B = QTYPE_QINT,
} FooKind;
to create nicer aliases for knowing when to use foo->a or foo->b
when inspecting foo->type; but it turned out to add too much
complexity, especially without a client.

There is a user-visible side effect to this change, but I
consider it to be an improvement. Previously,
the invalid QMP command:
{"execute":"blockdev-add", "arguments":{"options":
{"driver":"raw", "id":"a", "file":true}}}
failed with:
{"error": {"class": "GenericError",
"desc": "Invalid parameter type for 'file', expected: QDict"}}
(visit_get_next_type() succeeded, and the error comes from the
visit_type_BlockdevOptions() expecting {}; there is no mention of
the fact that a string would also work). Now it fails with:
{"error": {"class": "GenericError",
"desc": "Invalid parameter type for 'file', expected: BlockdevRef"}}
(the error when the next type doesn't match any expected types for
the overall alternate).

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1449033659-25497-5-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...


/openbmc/qemu/block/qapi.c
/openbmc/qemu/docs/qapi-code-gen.txt
/openbmc/qemu/hw/input/hid.c
/openbmc/qemu/hw/input/ps2.c
/openbmc/qemu/hw/input/virtio-input-hid.c
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/qapi/error.h
/openbmc/qemu/include/qapi/qmp/qbool.h
/openbmc/qemu/include/qapi/qmp/qdict.h
/openbmc/qemu/include/qapi/qmp/qfloat.h
/openbmc/qemu/include/qapi/qmp/qint.h
/openbmc/qemu/include/qapi/qmp/qlist.h
/openbmc/qemu/include/qapi/qmp/qobject.h
/openbmc/qemu/include/qapi/qmp/qstring.h
/openbmc/qemu/include/qapi/visitor-impl.h
/openbmc/qemu/include/qapi/visitor.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/monitor.c
qapi-visit-core.c
qmp-input-visitor.c
/openbmc/qemu/qobject/Makefile.objs
/openbmc/qemu/qobject/qbool.c
/openbmc/qemu/qobject/qdict.c
/openbmc/qemu/qobject/qfloat.c
/openbmc/qemu/qobject/qint.c
/openbmc/qemu/qobject/qlist.c
/openbmc/qemu/qobject/qnull.c
/openbmc/qemu/qobject/qobject.c
/openbmc/qemu/qobject/qstring.c
/openbmc/qemu/scripts/qapi-types.py
/openbmc/qemu/scripts/qapi-visit.py
/openbmc/qemu/scripts/qapi.py
/openbmc/qemu/tests/qapi-schema/alternate-empty.out
/openbmc/qemu/tests/qapi-schema/comments.out
/openbmc/qemu/tests/qapi-schema/empty.out
/openbmc/qemu/tests/qapi-schema/event-case.out
/openbmc/qemu/tests/qapi-schema/flat-union-empty.out
/openbmc/qemu/tests/qapi-schema/ident-with-escape.out
/openbmc/qemu/tests/qapi-schema/include-relpath.out
/openbmc/qemu/tests/qapi-schema/include-repetition.out
/openbmc/qemu/tests/qapi-schema/include-simple.out
/openbmc/qemu/tests/qapi-schema/indented-expr.out
/openbmc/qemu/tests/qapi-schema/qapi-schema-test.out
/openbmc/qemu/tests/qapi-schema/union-clash-data.out
/openbmc/qemu/tests/qapi-schema/union-empty.out
/openbmc/qemu/tests/test-qmp-input-visitor.c
/openbmc/qemu/tests/test-qmp-output-visitor.c
/openbmc/qemu/ui/cocoa.m
/openbmc/qemu/ui/gtk.c
/openbmc/qemu/ui/input-legacy.c
/openbmc/qemu/ui/sdl.c
/openbmc/qemu/ui/sdl2.c
/openbmc/qemu/ui/spice-input.c
/openbmc/qemu/ui/vnc.c
f22a28b818-Nov-2015 Eric Blake <eblake@redhat.com>

qapi: Add alias for ErrorClass

The qapi enum ErrorClass is unusual that it uses 'CamelCase' names,
contrary to our documented convention of preferring 'lower-case'.
However, this enum is entrenched

qapi: Add alias for ErrorClass

The qapi enum ErrorClass is unusual that it uses 'CamelCase' names,
contrary to our documented convention of preferring 'lower-case'.
However, this enum is entrenched in the API; we cannot change
what strings QMP outputs. Meanwhile, we want to simplify how
c_enum_const() is used to generate enum constants, by moving away
from the heuristics of camel_to_upper() to a more straightforward
c_name(N).upper() - but doing so will rename all of the ErrorClass
constants and cause churn to all client files, where the new names
are aesthetically less pleasing (ERROR_CLASS_DEVICENOTFOUND looks
like we can't make up our minds on whether to break between words).

So as always in computer science, solve the problem by some more
indirection: rename the qapi type to QapiErrorClass, and add a
new enum ErrorClass in error.h whose members are aliases of the
qapi type, but with the spelling expected elsewhere in the tree.
Then, when c_enum_const() changes the munging, we only have to
adjust the one alias spot.

Suggested by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1447836791-369-26-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...


/openbmc/qemu/block/blkdebug.c
/openbmc/qemu/block/parallels.c
/openbmc/qemu/block/qcow2.c
/openbmc/qemu/block/quorum.c
/openbmc/qemu/block/raw-posix.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/cpus.c
/openbmc/qemu/docs/qapi-code-gen.txt
/openbmc/qemu/hmp.c
/openbmc/qemu/hw/char/escc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/input/hid.c
/openbmc/qemu/hw/input/ps2.c
/openbmc/qemu/hw/input/virtio-input-hid.c
/openbmc/qemu/include/migration/migration.h
/openbmc/qemu/include/qapi/error.h
/openbmc/qemu/migration/migration.c
/openbmc/qemu/monitor.c
/openbmc/qemu/net/net.c
/openbmc/qemu/qapi-schema.json
common.json
qmp-dispatch.c
/openbmc/qemu/qemu-nbd.c
/openbmc/qemu/qmp-commands.hx
/openbmc/qemu/replay/replay-input.c
/openbmc/qemu/scripts/qapi.py
/openbmc/qemu/tests/Makefile
/openbmc/qemu/tests/qapi-schema/reserved-enum-q.err
/openbmc/qemu/tests/qapi-schema/reserved-enum-q.exit
/openbmc/qemu/tests/qapi-schema/reserved-enum-q.json
/openbmc/qemu/tests/qapi-schema/reserved-enum-q.out
/openbmc/qemu/tests/qapi-schema/reserved-member-underscore.err
/openbmc/qemu/tests/qapi-schema/reserved-member-underscore.exit
/openbmc/qemu/tests/qapi-schema/reserved-member-underscore.json
/openbmc/qemu/tests/qapi-schema/reserved-member-underscore.out
/openbmc/qemu/tests/test-qmp-output-visitor.c
/openbmc/qemu/tests/test-string-output-visitor.c
/openbmc/qemu/tpm.c
/openbmc/qemu/ui/cocoa.m
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/input-keymap.c
/openbmc/qemu/ui/input-legacy.c
/openbmc/qemu/ui/input.c
/openbmc/qemu/ui/sdl.c
/openbmc/qemu/ui/sdl2.c
/openbmc/qemu/ui/spice-input.c
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/vl.c
5be5b77618-Nov-2015 Eric Blake <eblake@redhat.com>

blkdebug: Avoid '.' in enum values

Our qapi conventions document that '.' should only be used in
the prefix of downstream names. BlkdebugEvent was a lone
exception to this. Changing this is not ba

blkdebug: Avoid '.' in enum values

Our qapi conventions document that '.' should only be used in
the prefix of downstream names. BlkdebugEvent was a lone
exception to this. Changing this is not backwards compatible
to the 'blockdev-add' QMP command; however, that command is
not yet fully stable. It can also be argued that the testsuite
is the biggest user of blkdebug, and that any other user can
be taught to deal with the change by paying attention to
introspection results.

Done with:

$ for str in \
l1_grow.{alloc,write,activate}_table \
l2_alloc.{cow_read,write} \
refblock_alloc.{hookup,write,write_blocks,write_table,switch_table} \
pwritev_rmw.{head,after_head,tail,after_tail}; do
str1=$(echo "$str" | sed 's/\./\\./')
str2=$(echo "$str" | sed 's/\./_/')
git grep -l "$str1" | xargs -r sed -i "s/$str1/$str2/g"
done

followed by a manual touchup to test 77 to keep the test working.

Reported-by: Markus Armbruster <armbru@redhat.com>
CC: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1447836791-369-21-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

a31939e618-Nov-2015 Eric Blake <eblake@redhat.com>

blkdebug: Merge hand-rolled and qapi BlkdebugEvent enum

No need to keep two separate enums, where editing one is likely
to forget the other. Now that we can specify a qapi enum prefix,
we don't eve

blkdebug: Merge hand-rolled and qapi BlkdebugEvent enum

No need to keep two separate enums, where editing one is likely
to forget the other. Now that we can specify a qapi enum prefix,
we don't even have to change the bulk of the uses.

get_event_by_name() could perhaps be replaced by qapi_enum_parse(),
but I left that for another day.

CC: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1447836791-369-20-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

6e0abc2511-Dec-2015 Max Reitz <mreitz@redhat.com>

blockdev: Mark {insert, remove}-medium experimental

While in the long term we want throttling to be its own block filter
BDS, in the short term we want it to be part of the BB instead of a BDS;
even

blockdev: Mark {insert, remove}-medium experimental

While in the long term we want throttling to be its own block filter
BDS, in the short term we want it to be part of the BB instead of a BDS;
even in the long term we may want legacy throttling to be automatically
tied to the BB.

blockdev-insert-medium and blockdev-remove-medium do not retain
throttling information in the BB (deliberately so). Therefore, using
them means tying this information to a BDS, which would break the model
described above. (The same applies to other flags such as
detect_zeroes.) We probably want to move this information to the BB or
its own filter BDS before blockdev-{insert,remove}-medium can be
considered completely stable.

Therefore, mark these functions experimental for the time being.

Suggested-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Acked-by: Kevin Wolf <kwolf@redhat.com>
Message-id: 1449847385-13986-2-git-send-email-mreitz@redhat.com
Reviewed-by: Eric Blake <eblake@redhat.com>
[PMM: fixed format nit (underlining) in qmp-commands.hx]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

show more ...


/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/VERSION
/openbmc/qemu/backends/hostmem.c
/openbmc/qemu/block/backup.c
/openbmc/qemu/block/blkdebug.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/block/io.c
/openbmc/qemu/block/mirror.c
/openbmc/qemu/block/parallels.c
/openbmc/qemu/block/qapi.c
/openbmc/qemu/block/qcow2-refcount.c
/openbmc/qemu/block/raw-posix.c
/openbmc/qemu/block/snapshot.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/bsd-user/elfload.c
/openbmc/qemu/configure
/openbmc/qemu/cpus.c
/openbmc/qemu/crypto/tlscreds.c
/openbmc/qemu/crypto/tlscredsx509.c
/openbmc/qemu/crypto/tlssession.c
/openbmc/qemu/default-configs/aarch64-linux-user.mak
/openbmc/qemu/docs/specs/vhost-user.txt
/openbmc/qemu/exec.c
/openbmc/qemu/fsdev/virtfs-proxy-helper.c
/openbmc/qemu/hw/9pfs/virtio-9p-coth.c
/openbmc/qemu/hw/9pfs/virtio-9p-coth.h
/openbmc/qemu/hw/9pfs/virtio-9p-device.c
/openbmc/qemu/hw/acpi/core.c
/openbmc/qemu/hw/acpi/memory_hotplug.c
/openbmc/qemu/hw/arm/xlnx-ep108.c
/openbmc/qemu/hw/block/dataplane/virtio-blk.c
/openbmc/qemu/hw/block/nand.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/block/xen_disk.c
/openbmc/qemu/hw/bt/sdp.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/ide/atapi.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/internal.h
/openbmc/qemu/hw/ide/pci.c
/openbmc/qemu/hw/intc/arm_gic.c
/openbmc/qemu/hw/mips/gt64xxx_pci.c
/openbmc/qemu/hw/misc/ivshmem.c
/openbmc/qemu/hw/misc/macio/mac_dbdma.c
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/eepro100.c
/openbmc/qemu/hw/net/lan9118.c
/openbmc/qemu/hw/net/pcnet.c
/openbmc/qemu/hw/net/vhost_net.c
/openbmc/qemu/hw/net/vmxnet3.c
/openbmc/qemu/hw/pci-host/piix.c
/openbmc/qemu/hw/pci-host/q35.c
/openbmc/qemu/hw/ppc/ppc405_boards.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_drc.c
/openbmc/qemu/hw/s390x/s390-pci-bus.c
/openbmc/qemu/hw/s390x/s390-pci-bus.h
/openbmc/qemu/hw/s390x/s390-pci-inst.c
/openbmc/qemu/hw/s390x/s390-virtio.c
/openbmc/qemu/hw/s390x/virtio-ccw.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/sd/sd.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-bus.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio-pci.h
/openbmc/qemu/hw/xenpv/xen_domainbuild.c
/openbmc/qemu/include/block/block.h
/openbmc/qemu/include/block/snapshot.h
/openbmc/qemu/include/exec/cpu-all.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/bt.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/hw/scsi/scsi.h
/openbmc/qemu/include/hw/sd/sdhci.h
/openbmc/qemu/include/hw/virtio/vhost.h
/openbmc/qemu/include/hw/virtio/virtio-blk.h
/openbmc/qemu/include/hw/virtio/virtio-bus.h
/openbmc/qemu/include/hw/xen/xen_common.h
/openbmc/qemu/include/qapi/qmp/json-lexer.h
/openbmc/qemu/include/qapi/qmp/json-parser.h
/openbmc/qemu/include/qapi/qmp/json-streamer.h
/openbmc/qemu/include/qemu/buffer.h
/openbmc/qemu/include/qemu/mmap-alloc.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/qom/object.h
/openbmc/qemu/include/sysemu/block-backend.h
/openbmc/qemu/include/sysemu/os-win32.h
/openbmc/qemu/iothread.c
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/mmap.c
/openbmc/qemu/main-loop.c
/openbmc/qemu/migration/block.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/postcopy-ram.c
/openbmc/qemu/migration/qemu-file-unix.c
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/monitor.c
/openbmc/qemu/net/filter.c
/openbmc/qemu/net/tap-win32.c
/openbmc/qemu/net/vhost-user.c
/openbmc/qemu/pc-bios/s390-ccw.img
/openbmc/qemu/pc-bios/s390-ccw/Makefile
/openbmc/qemu/po/de_DE.po
/openbmc/qemu/po/fr_FR.po
/openbmc/qemu/po/hu.po
/openbmc/qemu/po/it.po
/openbmc/qemu/po/messages.po
/openbmc/qemu/po/tr.po
/openbmc/qemu/po/zh_CN.po
block-core.json
/openbmc/qemu/qemu-char.c
/openbmc/qemu/qemu-doc.texi
/openbmc/qemu/qga/commands-posix.c
/openbmc/qemu/qga/commands-win32.c
/openbmc/qemu/qga/commands.c
/openbmc/qemu/qga/guest-agent-core.h
/openbmc/qemu/qga/installer/qemu-ga.wxs
/openbmc/qemu/qga/main.c
/openbmc/qemu/qga/qapi-schema.json
/openbmc/qemu/qmp-commands.hx
/openbmc/qemu/qmp.c
/openbmc/qemu/qobject/json-lexer.c
/openbmc/qemu/qobject/json-parser.c
/openbmc/qemu/qobject/json-streamer.c
/openbmc/qemu/qobject/qjson.c
/openbmc/qemu/qom/object.c
/openbmc/qemu/stubs/qtest.c
/openbmc/qemu/target-arm/helper.c
/openbmc/qemu/target-arm/translate-a64.c
/openbmc/qemu/target-arm/translate.c
/openbmc/qemu/target-i386/cpu.c
/openbmc/qemu/target-i386/cpu.h
/openbmc/qemu/target-i386/kvm.c
/openbmc/qemu/target-i386/translate.c
/openbmc/qemu/target-mips/cpu.h
/openbmc/qemu/target-mips/helper.c
/openbmc/qemu/target-mips/op_helper.c
/openbmc/qemu/target-ppc/cpu.h
/openbmc/qemu/target-ppc/dfp_helper.c
/openbmc/qemu/target-ppc/fpu_helper.c
/openbmc/qemu/target-sparc/translate.c
/openbmc/qemu/target-sparc/vis_helper.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tests/Makefile
/openbmc/qemu/tests/check-qjson.c
/openbmc/qemu/tests/check-qom-proplist.c
/openbmc/qemu/tests/crypto-tls-x509-helpers.c
/openbmc/qemu/tests/ide-test.c
/openbmc/qemu/tests/ivshmem-test.c
/openbmc/qemu/tests/libqtest.c
/openbmc/qemu/tests/libqtest.h
/openbmc/qemu/tests/qemu-iotests/030
/openbmc/qemu/tests/qemu-iotests/056
/openbmc/qemu/tests/qemu-iotests/056.out
/openbmc/qemu/tests/qemu-iotests/118
/openbmc/qemu/tests/qemu-iotests/119
/openbmc/qemu/tests/qemu-iotests/120
/openbmc/qemu/tests/qemu-iotests/139
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/qom-test.c
/openbmc/qemu/tests/test-aio.c
/openbmc/qemu/tests/test-qga.c
/openbmc/qemu/tests/vhost-user-bridge.c
/openbmc/qemu/tests/vhost-user-test.c
/openbmc/qemu/trace-events
/openbmc/qemu/trace/simple.c
/openbmc/qemu/translate-all.c
/openbmc/qemu/translate-common.c
/openbmc/qemu/ui/cocoa.m
/openbmc/qemu/ui/vnc-jobs.c
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/util/buffer.c
/openbmc/qemu/util/id.c
/openbmc/qemu/util/mmap-alloc.c
/openbmc/qemu/util/osdep.c
/openbmc/qemu/util/oslib-posix.c
/openbmc/qemu/util/oslib-win32.c
/openbmc/qemu/vl.c
40119eff16-Nov-2015 Alberto Garcia <berto@igalia.com>

block: make 'stats-interval' an array of ints instead of a string

This is the natural JSON representation and prevents us from having to
decode the list manually.

Signed-off-by: Alberto Garcia <ber

block: make 'stats-interval' an array of ints instead of a string

This is the natural JSON representation and prevents us from having to
decode the list manually.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Message-id: 0e3da8fa206f4ab534ae3ce6086e75fe84f1557e.1447665472.git.berto@igalia.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>

show more ...


/openbmc/qemu/VERSION
/openbmc/qemu/aio-posix.c
/openbmc/qemu/block/accounting.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/configure
/openbmc/qemu/disas/arm.c
/openbmc/qemu/docs/bitmaps.md
/openbmc/qemu/docs/specs/vhost-user.txt
/openbmc/qemu/hmp-commands.hx
/openbmc/qemu/hw/9pfs/virtio-9p-device.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/block/nvme.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/block/xen_disk.c
/openbmc/qemu/hw/ide/atapi.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/macio.c
/openbmc/qemu/hw/misc/Makefile.objs
/openbmc/qemu/hw/misc/zynq-xadc.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/tpm/tpm_tis.c
/openbmc/qemu/hw/virtio/vhost-backend.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio-pci.h
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/include/block/accounting.h
/openbmc/qemu/include/hw/compat.h
/openbmc/qemu/include/hw/misc/zynq-xadc.h
/openbmc/qemu/include/hw/virtio/virtio-bus.h
/openbmc/qemu/include/sysemu/kvm.h
/openbmc/qemu/include/sysemu/sysemu.h
/openbmc/qemu/kvm-all.c
/openbmc/qemu/kvm-stub.c
/openbmc/qemu/linux-headers/linux/vhost.h
/openbmc/qemu/memory.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/qapi-schema.json
block-core.json
/openbmc/qemu/qemu-io-cmds.c
/openbmc/qemu/qemu-seccomp.c
/openbmc/qemu/target-arm/translate-a64.c
/openbmc/qemu/target-arm/translate.c
/openbmc/qemu/tests/.gitignore
/openbmc/qemu/tests/ahci-test.c
/openbmc/qemu/tests/libqos/libqos.c
/openbmc/qemu/tests/libqos/libqos.h
/openbmc/qemu/tests/qemu-iotests/136
/openbmc/qemu/tests/qemu-iotests/136.out
/openbmc/qemu/tests/qemu-iotests/group
/openbmc/qemu/tests/vhost-user-bridge.c
/openbmc/qemu/tests/vhost-user-test.c
39a65e2c11-Nov-2015 Eric Blake <eblake@redhat.com>

qapi: Document introspection stability considerations

We are not ready (and might never be ready) to declare
introspection stable between releases. Clients written to
control multiple versions of qe

qapi: Document introspection stability considerations

We are not ready (and might never be ready) to declare
introspection stable between releases. Clients written to
control multiple versions of qemu, and desiring to know
whether a particular member is supported for a given
command, must be prepared to locate that member in spite
of qapi changes that may affect the member's location or
type within the overall object, even though such changes
did not break QMP wire back-compatibility.

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-Id: <1447264202-19554-1-git-send-email-eblake@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...


/openbmc/qemu/VERSION
/openbmc/qemu/block/accounting.c
/openbmc/qemu/configure
/openbmc/qemu/docs/qapi-code-gen.txt
/openbmc/qemu/docs/specs/vhost-user.txt
/openbmc/qemu/hmp-commands.hx
/openbmc/qemu/hw/9pfs/virtio-9p-device.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/block/nvme.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/block/xen_disk.c
/openbmc/qemu/hw/ide/atapi.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/macio.c
/openbmc/qemu/hw/misc/Makefile.objs
/openbmc/qemu/hw/misc/zynq-xadc.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/virtio/vhost-backend.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio-pci.h
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/include/block/accounting.h
/openbmc/qemu/include/hw/compat.h
/openbmc/qemu/include/hw/misc/zynq-xadc.h
/openbmc/qemu/include/hw/virtio/virtio-bus.h
/openbmc/qemu/include/sysemu/kvm.h
/openbmc/qemu/include/sysemu/sysemu.h
/openbmc/qemu/kvm-all.c
/openbmc/qemu/kvm-stub.c
/openbmc/qemu/linux-headers/linux/vhost.h
/openbmc/qemu/memory.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/qapi-schema.json
introspect.json
/openbmc/qemu/qemu-io-cmds.c
/openbmc/qemu/qemu-seccomp.c
/openbmc/qemu/target-arm/translate-a64.c
/openbmc/qemu/target-arm/translate.c
/openbmc/qemu/tests/ahci-test.c
/openbmc/qemu/tests/libqos/libqos.c
/openbmc/qemu/tests/libqos/libqos.h
/openbmc/qemu/tests/qemu-iotests/136
/openbmc/qemu/tests/qemu-iotests/136.out
/openbmc/qemu/tests/qemu-iotests/group
/openbmc/qemu/tests/vhost-user-bridge.c
/openbmc/qemu/tests/vhost-user-test.c
2be5506f28-Oct-2015 Alberto Garcia <berto@igalia.com>

block: New option to define the intervals for collecting I/O statistics

The BlockAcctStats structure contains a list of BlockAcctTimedStats.
Each one of these collects statistics about the minimum,

block: New option to define the intervals for collecting I/O statistics

The BlockAcctStats structure contains a list of BlockAcctTimedStats.
Each one of these collects statistics about the minimum, maximum and
average latencies of all I/O operations in a certain interval of time.

This patch adds a new "stats-intervals" option that allows defining
these intervals.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Message-id: 41cbcd334a61c6157f0f495cdfd21eff6c156f2a.1446044837.git.berto@igalia.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

96e4deda28-Oct-2015 Alberto Garcia <berto@igalia.com>

block: Add average I/O queue depth to BlockDeviceTimedStats

This patch adds two new fields to BlockDeviceTimedStats that track the
average number of pending read and write requests for a block devic

block: Add average I/O queue depth to BlockDeviceTimedStats

This patch adds two new fields to BlockDeviceTimedStats that track the
average number of pending read and write requests for a block device.

The values are calculated for the period of time defined for that
interval.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Message-id: fd31fef53e2714f2f30d59ed58ca2f67ec9ab926.1446044837.git.berto@igalia.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

979e9b0328-Oct-2015 Alberto Garcia <berto@igalia.com>

block: Compute minimum, maximum and average I/O latencies

This patch keeps track of the minimum, maximum and average latencies
of I/O operations during a certain interval of time.

The values are ex

block: Compute minimum, maximum and average I/O latencies

This patch keeps track of the minimum, maximum and average latencies
of I/O operations during a certain interval of time.

The values are exposed in the BlockDeviceTimedStats structure.

An option to define the intervals to collect these statistics will be
added in a separate patch.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Message-id: c7382dc89622c64f918d09f32815827772628f8e.1446044837.git.berto@igalia.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

362e929928-Oct-2015 Alberto Garcia <berto@igalia.com>

block: Allow configuring whether to account failed and invalid ops

This patch adds two options, "stats-account-invalid" and
"stats-account-failed", that can be used to decide whether invalid and
fai

block: Allow configuring whether to account failed and invalid ops

This patch adds two options, "stats-account-invalid" and
"stats-account-failed", that can be used to decide whether invalid and
failed I/O operations must be used when collecting statistics for
latency and last access time.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: ebc7e5966511a342cad428a392c5f5ad56b15213.1446044837.git.berto@igalia.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

7ee12daf28-Oct-2015 Alberto Garcia <berto@igalia.com>

block: Add statistics for failed and invalid I/O operations

This patch adds the block_acct_failed() and block_acct_invalid()
functions to allow keeping track of failed and invalid I/O operations.

T

block: Add statistics for failed and invalid I/O operations

This patch adds the block_acct_failed() and block_acct_invalid()
functions to allow keeping track of failed and invalid I/O operations.

The number of failed and invalid operations is exposed in
BlockDeviceStats.

We don't keep track of the time spent on invalid operations because
they are cancelled immediately when they are started.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Message-id: a7256ccb883a86356b1c6c46b5a29ed5448546a5.1446044837.git.berto@igalia.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

cb38fffb28-Oct-2015 Alberto Garcia <berto@igalia.com>

block: Add idle_time_ns to BlockDeviceStats

This patch adds the new field 'idle_time_ns' to the BlockDeviceStats
structure, indicating the time that has passed since the previous I/O
operation.

It

block: Add idle_time_ns to BlockDeviceStats

This patch adds the new field 'idle_time_ns' to the BlockDeviceStats
structure, indicating the time that has passed since the previous I/O
operation.

It also adds the block_acct_idle_time_ns() call, to ensure that all
references to the clock type used for accounting are in the same
place. This will later allow us to use a different clock for iotests.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Message-id: 7d8cfcf931453e1a2443e6626e8c1edc347c7c8a.1446044837.git.berto@igalia.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...


/openbmc/qemu/MAINTAINERS
/openbmc/qemu/block.c
/openbmc/qemu/block/accounting.c
/openbmc/qemu/block/backup.c
/openbmc/qemu/block/gluster.c
/openbmc/qemu/block/io.c
/openbmc/qemu/block/iscsi.c
/openbmc/qemu/block/mirror.c
/openbmc/qemu/block/qapi.c
/openbmc/qemu/block/qcow2-cluster.c
/openbmc/qemu/block/qed.c
/openbmc/qemu/block/raw-posix.c
/openbmc/qemu/block/raw_bsd.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/blockjob.c
/openbmc/qemu/docs/bitmaps.md
/openbmc/qemu/docs/writing-qmp-commands.txt
/openbmc/qemu/hmp.c
/openbmc/qemu/hw/block/xen_disk.c
/openbmc/qemu/hw/core/qdev.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/misc/macio/cuda.c
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/e1000_regs.h
/openbmc/qemu/hw/net/rocker/rocker.c
/openbmc/qemu/hw/net/rocker/rocker_of_dpa.c
/openbmc/qemu/hw/ppc/mac.h
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/s390x/css.c
/openbmc/qemu/hw/s390x/ipl.c
/openbmc/qemu/hw/s390x/ipl.h
/openbmc/qemu/hw/s390x/s390-pci-bus.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/s390x/s390-virtio.c
/openbmc/qemu/include/block/accounting.h
/openbmc/qemu/include/block/block.h
/openbmc/qemu/include/block/block_int.h
/openbmc/qemu/include/block/blockjob.h
/openbmc/qemu/include/hw/compat.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/monitor/hmp-target.h
/openbmc/qemu/include/qemu/timed-average.h
/openbmc/qemu/monitor.c
/openbmc/qemu/net/netmap.c
/openbmc/qemu/pc-bios/s390-ccw.img
/openbmc/qemu/pc-bios/s390-ccw/bootmap.c
/openbmc/qemu/pc-bios/s390-ccw/bootmap.h
/openbmc/qemu/pc-bios/s390-ccw/virtio.c
/openbmc/qemu/pc-bios/s390-ccw/virtio.h
/openbmc/qemu/qapi-schema.json
block-core.json
/openbmc/qemu/qemu-img.c
/openbmc/qemu/qga/commands-win32.c
/openbmc/qemu/qmp-commands.hx
/openbmc/qemu/qom/object.c
/openbmc/qemu/slirp/bootp.c
/openbmc/qemu/slirp/if.c
/openbmc/qemu/slirp/ip_icmp.c
/openbmc/qemu/slirp/ip_input.c
/openbmc/qemu/slirp/ip_output.c
/openbmc/qemu/slirp/mbuf.c
/openbmc/qemu/slirp/misc.c
/openbmc/qemu/slirp/sbuf.c
/openbmc/qemu/slirp/socket.c
/openbmc/qemu/slirp/tcp_input.c
/openbmc/qemu/slirp/tcp_output.c
/openbmc/qemu/slirp/tcp_subr.c
/openbmc/qemu/slirp/udp.c
/openbmc/qemu/stubs/Makefile.objs
/openbmc/qemu/stubs/target-get-monitor-def.c
/openbmc/qemu/target-ppc/cpu-qom.h
/openbmc/qemu/target-ppc/mem_helper.c
/openbmc/qemu/target-ppc/monitor.c
/openbmc/qemu/target-ppc/translate.c
/openbmc/qemu/target-s390x/kvm.c
/openbmc/qemu/tests/Makefile
/openbmc/qemu/tests/ivshmem-test.c
/openbmc/qemu/tests/qemu-iotests/124
/openbmc/qemu/tests/qemu-iotests/124.out
/openbmc/qemu/tests/qemu-iotests/139
/openbmc/qemu/tests/qemu-iotests/139.out
/openbmc/qemu/tests/qemu-iotests/group
/openbmc/qemu/tests/test-blockjob-txn.c
/openbmc/qemu/tests/test-timed-average.c
/openbmc/qemu/util/Makefile.objs
/openbmc/qemu/util/timed-average.c
81b936ae02-Nov-2015 Alberto Garcia <berto@igalia.com>

block: Add 'x-blockdev-del' QMP command

This command is still experimental, hence the name.

This is the companion to 'blockdev-add'. It allows deleting a
BlockBackend with its associated BlockDrive

block: Add 'x-blockdev-del' QMP command

This command is still experimental, hence the name.

This is the companion to 'blockdev-add'. It allows deleting a
BlockBackend with its associated BlockDriverState tree, or a
BlockDriverState that is not attached to any backend.

In either case, the command fails if the reference count is greater
than 1 or the BlockDriverState has any parents.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Message-id: 6cfc148c77aca1da942b094d811bfa3fcf7ac7bb.1446475331.git.berto@igalia.com
Signed-off-by: Max Reitz <mreitz@redhat.com>

show more ...

43de7e2d26-Oct-2015 Alberto Garcia <berto@igalia.com>

block: add a 'blockdev-snapshot' QMP command

One of the limitations of the 'blockdev-snapshot-sync' command is that
it does not allow passing BlockdevOptions to the newly created
snapshots, so they

block: add a 'blockdev-snapshot' QMP command

One of the limitations of the 'blockdev-snapshot-sync' command is that
it does not allow passing BlockdevOptions to the newly created
snapshots, so they are always opened using the default values.

Extending the command to allow passing options is not a practical
solution because there is overlap between those options and some of
the existing parameters of the command.

This patch introduces a new 'blockdev-snapshot' command with a simpler
interface: it just takes two references to existing block devices that
will be used as the source and target for the snapshot.

Since the main difference between the two commands is that one of them
creates and opens the target image, while the other uses an already
opened one, the bulk of the implementation is shared.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

a911e6ae26-Oct-2015 Alberto Garcia <berto@igalia.com>

block: rename BlockdevSnapshot to BlockdevSnapshotSync

We will introduce the 'blockdev-snapshot' command that will require
its own struct for the parameters, so we need to rename this one in
order t

block: rename BlockdevSnapshot to BlockdevSnapshotSync

We will introduce the 'blockdev-snapshot' command that will require
its own struct for the parameters, so we need to rename this one in
order to avoid name clashes.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Jeff Cody <jcody@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

39ff43d910-Nov-2015 Max Reitz <mreitz@redhat.com>

blockdev: read-only-mode for blockdev-change-medium

Add an option to qmp_blockdev_change_medium() which allows changing the
read-only status of the block device whose medium is changed.

Some drives

blockdev: read-only-mode for blockdev-change-medium

Add an option to qmp_blockdev_change_medium() which allows changing the
read-only status of the block device whose medium is changed.

Some drives do not have a inherently fixed read-only status; for
instance, floppy disks can be set read-only or writable independently of
the drive. Some users may find it useful to be able to therefore change
the read-only status of a block device when changing the medium.

Signed-off-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

24fb413306-Nov-2015 Max Reitz <mreitz@redhat.com>

qmp: Introduce blockdev-change-medium

Introduce a new QMP command 'blockdev-change-medium' which is intended
to replace the 'change' command for block devices. The existing function
qmp_change_block

qmp: Introduce blockdev-change-medium

Introduce a new QMP command 'blockdev-change-medium' which is intended
to replace the 'change' command for block devices. The existing function
qmp_change_blockdev() is accordingly renamed to
qmp_blockdev_change_medium().

Signed-off-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

d129988226-Oct-2015 Max Reitz <mreitz@redhat.com>

blockdev: Add blockdev-insert-medium

And a helper function for that, which directly takes a pointer to the
BDS to be inserted instead of its node-name (which will be used for
implementing 'change' u

blockdev: Add blockdev-insert-medium

And a helper function for that, which directly takes a pointer to the
BDS to be inserted instead of its node-name (which will be used for
implementing 'change' using blockdev-insert-medium).

Signed-off-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

2814f67226-Oct-2015 Max Reitz <mreitz@redhat.com>

blockdev: Add blockdev-remove-medium

Signed-off-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

abaaf59d26-Oct-2015 Max Reitz <mreitz@redhat.com>

blockdev: Add blockdev-close-tray

Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

1...<<616263646566676869