[libvirt] [PATCH 4/8] conf, qemu: Add newer shmem models

Martin Kletzander mkletzan at redhat.com
Tue Oct 11 15:16:51 UTC 2016


On Fri, Oct 07, 2016 at 11:09:54AM -0400, John Ferlan wrote:
>
>
>On 09/27/2016 08:24 AM, Martin Kletzander wrote:
>> The old ivshmem is deprecated in QEMU, so let's use the better
>> ivshmem-{plain,doorbell} variants instead.
>>
>
>Perhaps explained a bit differently (my understanding ;-))... Older
>versions of qemu had one type (ivshmem - the current default), but newer
>versions of qemu will force selection of a specific type using "plain"
>or "doorbell" as the model type depending on which "features" are
>desired (??) [fill in the details]
>

Old ivshmem could've been optionally used with or without "server"
option (it would connect to a UNIX socket and talk to the server and so
on.  That got broken up to two separate new devices.  One without server
(-plain) and one with the server (-doorbell).  As mentioned in one of
the previous series, I could've add model named something like
'ivshmem-newer' and under the covers choose -plain or -doorbell, but 1)
it would be really stupid and 2) the differentiation could change in the
future and being specific is better than being bitten in the butt later
on.

>I guess the nagging question is - what happens if someone "chooses" to
>have <model type='ivshmem'> in this newer world?  Does the deprecation
>from qemu kick in and the domain cannot start?  We should note that
>somehow/somewhere.
>

They get a warning in the log saying "ivshmem is deprecated, please use
ivshmem-plain or ivshmem-doorbell instead".  And if QEMU stops
supporting that, we'll know about it thanks to the capabilities and tell
the user that the model is not available (like for _almost_ all other
devices).

>> Signed-off-by: Martin Kletzander <mkletzan at redhat.com>
>> ---
>>  docs/schemas/domaincommon.rng | 2 ++
>>  src/conf/domain_conf.c        | 4 +++-
>>  src/conf/domain_conf.h        | 2 ++
>>  src/qemu/qemu_command.c       | 7 +++++++
>>  4 files changed, 14 insertions(+), 1 deletion(-)
>>
>
>docs/formatdomain.html.in needs to change here too
>
>In particular what constitutes each setting - that is are there XML
>elements that would or wouldn't make sense for the type of shmem device
>(I'm thinking of Daniel's table here).
>
>BTW: When using your "Since" tags, it'll need to be clear which version
>of qemu no longer supports "type='ivshmem'" and forces someone to choose
>-plain or -doorbell.
>

I'd rather remove the Since (at least for QEMU, maybe leave one for
libvirt), the version doesn't mean poopsicle.  I can see the nitpicky
people saying: "look, I have this QEMU and it says it shouldn't be
supported and it is, isn't this a bug?" because some distribution chose
to backport one patch.  I don't think the versions make sense, everyone
can lookup when it was introduced.  I believe it's not that hard.

>ACK w/ the doc change
>
>
>John
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20161011/8f2519cd/attachment-0001.sig>


More information about the libvir-list mailing list