<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/include/qom, branch spice_video_codecs</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/include/qom?h=spice_video_codecs</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/include/qom?h=spice_video_codecs'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2022-06-28T08:53:32+00:00</updated>
<entry>
<title>qom/object: Remove circular include dependency</title>
<updated>2022-06-28T08:53:32+00:00</updated>
<author>
<name>Philippe Mathieu-Daudé</name>
</author>
<published>2022-05-09T08:46:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=5bba9bcfbb42e7c016626420e148a1bf1b080835'/>
<id>urn:sha1:5bba9bcfbb42e7c016626420e148a1bf1b080835</id>
<content type='text'>
"qom/object.h" doesn't need to include itself.

Fixes: db1015e92e04 ("Move QOM typedefs and add missing includes")
Signed-off-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
Reviewed-by: Damien Hedde &lt;damien.hedde@greensocs.com&gt;
Reviewed-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Reviewed-by: Markus Armbruster &lt;armbru@redhat.com&gt;
Message-Id: &lt;20220509084659.52076-1-philippe.mathieu.daude@gmail.com&gt;
Signed-off-by: Laurent Vivier &lt;laurent@vivier.eu&gt;
</content>
</entry>
<entry>
<title>compiler.h: replace QEMU_SENTINEL with G_GNUC_NULL_TERMINATED</title>
<updated>2022-03-22T10:40:51+00:00</updated>
<author>
<name>Marc-André Lureau</name>
</author>
<published>2022-02-23T20:58:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=887ce500ef0046d35e613e40f7beb647a797b3e7'/>
<id>urn:sha1:887ce500ef0046d35e613e40f7beb647a797b3e7</id>
<content type='text'>
One less qemu-specific macro. It also helps to make some headers/units
only depend on glib, and thus moved in standalone projects eventually.

Signed-off-by: Marc-André Lureau &lt;marcandre.lureau@redhat.com&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
</content>
</entry>
<entry>
<title>monitor: Fix find_device_state() for IDs containing slashes</title>
<updated>2021-11-10T05:14:51+00:00</updated>
<author>
<name>Markus Armbruster</name>
</author>
<published>2021-10-19T08:57:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=1bf4d3294bd48b702530b131e3344860495425fd'/>
<id>urn:sha1:1bf4d3294bd48b702530b131e3344860495425fd</id>
<content type='text'>
Recent commit 6952026120 "monitor: Tidy up find_device_state()"
assumed the function's argument is "the device's ID or QOM path" (as
documented for device_del).  It's actually either an absolute QOM
path, or a QOM path relative to /machine/peripheral/.  Such a relative
path is a device ID when it doesn't contain a slash.  When it does,
the function now always fails.  Broke iotest 200, which uses relative
path "vda/virtio-backend".

It fails because object_resolve_path_component() resolves just one
component, not a relative path.

The obvious function to resolve relative paths is
object_resolve_path().  It picks a parent automatically.  Too much
magic, we want to specify the parent.  Create new
object_resolve_path_at() for that, and use it in find_device_state().

Reported-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Signed-off-by: Markus Armbruster &lt;armbru@redhat.com&gt;
Message-Id: &lt;20211019085711.86377-1-armbru@redhat.com&gt;
Tested-by: Christian Borntraeger &lt;borntraeger@de.ibm.com&gt;
Acked-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>qom: export more functions for use with non-UserCreatable objects</title>
<updated>2021-07-06T06:33:51+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2020-11-02T16:08:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=3bb6944585aa6f28b21265c88d86264e8e9f7e53'/>
<id>urn:sha1:3bb6944585aa6f28b21265c88d86264e8e9f7e53</id>
<content type='text'>
Machines and accelerators are not user-creatable but they are going
to share similar command-line parsing machinery.  Export functions
that will be used with -machine and -accel in softmmu/vl.c.

Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>qom: move user_creatable_add_opts logic to vl.c and QAPIfy it</title>
<updated>2021-03-19T09:18:17+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2021-03-12T17:35:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=bc2f4fcb1dd1a66ede126593fa091c23a94e3ab8'/>
<id>urn:sha1:bc2f4fcb1dd1a66ede126593fa091c23a94e3ab8</id>
<content type='text'>
Emulators are currently using OptsVisitor (via user_creatable_add_opts)
to parse the -object command line option.  This has one extra feature,
compared to keyval, which is automatic conversion of integers to lists
as well as support for lists as repeated options:

  -object memory-backend-ram,id=pc.ram,size=1048576000,host-nodes=0,policy=bind

So we cannot replace OptsVisitor with keyval right now.  Still, this
patch moves the user_creatable_add_opts logic to vl.c since it is
not needed anywhere else, and makes it go through user_creatable_add_qapi.

In order to minimize code changes, the predicate still takes a string.
This can be changed later to use the ObjectType QAPI enum directly.

Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Message-Id: &lt;20210312173547.1283477-3-pbonzini@redhat.com&gt;
Reviewed-by: Markus Armbruster &lt;armbru@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>qom: Add user_creatable_parse_str()</title>
<updated>2021-03-19T09:17:14+00:00</updated>
<author>
<name>Kevin Wolf</name>
</author>
<published>2021-02-19T17:14:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=ddf6dae7e34271332fbc04921d0c91ab6a009b5a'/>
<id>urn:sha1:ddf6dae7e34271332fbc04921d0c91ab6a009b5a</id>
<content type='text'>
The system emulator has a more complicated way of handling command line
options in that it reorders options before it processes them. This means
that parsing object options and creating the object happen at two
different points. Split the parsing part into a separate function that
can be reused by the system emulator command line.

Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
Acked-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Acked-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
</entry>
<entry>
<title>qom: Add user_creatable_add_from_str()</title>
<updated>2021-03-19T09:17:14+00:00</updated>
<author>
<name>Kevin Wolf</name>
</author>
<published>2021-02-17T13:59:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=ffd58ef88c73700113e0808e8222ef4d22224f33'/>
<id>urn:sha1:ffd58ef88c73700113e0808e8222ef4d22224f33</id>
<content type='text'>
This is a version of user_creatable_process_cmdline() with an Error
parameter that never calls exit() and is therefore usable in HMP.

Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
Acked-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Acked-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
</entry>
<entry>
<title>qom: Factor out user_creatable_process_cmdline()</title>
<updated>2021-03-19T09:17:14+00:00</updated>
<author>
<name>Kevin Wolf</name>
</author>
<published>2021-02-17T11:06:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=f375026606f4ae1486189cb758cd0dfa60b3c18f'/>
<id>urn:sha1:f375026606f4ae1486189cb758cd0dfa60b3c18f</id>
<content type='text'>
The implementation for --object can be shared between
qemu-storage-daemon and other binaries, so move it into a function in
qom/object_interfaces.c that is accessible from everywhere.

This also requires moving the implementation of qmp_object_add() into a
new user_creatable_add_qapi(), because qom/qom-qmp-cmds.c is not linked
for tools.

user_creatable_print_help_from_qdict() can become static now.

Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
Acked-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Acked-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
</entry>
<entry>
<title>qom: Remove user_creatable_add_dict()</title>
<updated>2021-03-19T09:17:14+00:00</updated>
<author>
<name>Kevin Wolf</name>
</author>
<published>2020-11-17T14:27:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=c9231123907415d7737263b9ca6f125a8181463b'/>
<id>urn:sha1:c9231123907415d7737263b9ca6f125a8181463b</id>
<content type='text'>
This function is now unused and can be removed.

Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
Acked-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Acked-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
</entry>
<entry>
<title>qapi/qom: QAPIfy object-add</title>
<updated>2021-03-19T09:17:14+00:00</updated>
<author>
<name>Kevin Wolf</name>
</author>
<published>2020-10-20T11:27:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=9151e59a8b6e854eb733553c6772351049ca6ab6'/>
<id>urn:sha1:9151e59a8b6e854eb733553c6772351049ca6ab6</id>
<content type='text'>
This converts object-add from 'gen': false to the ObjectOptions QAPI
type. As an immediate benefit, clients can now use QAPI schema
introspection for user creatable QOM objects.

It is also the first step towards making the QAPI schema the only
external interface for the creation of user creatable objects. Once all
other places (HMP and command lines of the system emulator and all
tools) go through QAPI, too, some object implementations can be
simplified because some checks (e.g. that mandatory options are set) are
already performed by QAPI, and in another step, QOM boilerplate code
could be generated from the schema.

Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
Acked-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Acked-by: Peter Krempa &lt;pkrempa@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
</content>
</entry>
</feed>
