qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: optional feature


From: Juan Quintela
Subject: [Qemu-devel] Re: optional feature
Date: Wed, 16 Sep 2009 14:14:32 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

"Michael S. Tsirkin" <address@hidden> wrote:
> On Wed, Sep 16, 2009 at 01:48:35PM +0200, Juan Quintela wrote:
>> Gleb Natapov <address@hidden> wrote:
>> > On Wed, Sep 16, 2009 at 01:04:19PM +0200, Juan Quintela wrote:
>> >> "Michael S. Tsirkin" <address@hidden> wrote:
>> >> > On Wed, Sep 09, 2009 at 10:47:27AM +0200, Juan Quintela wrote:
>> >> >> How do we deal with optional features?
>> >> >
>> >> > Here's an idea that Gleb suggested in a private
>> >> > conversation: make optional features into
>> >> > separate, non-user-visible devices.
>> >> >
>> >> > Thus we would have vmstate for virtio and additionally, if msix is
>> >> > enabled, vmstate for msix. This solves the problem of the number of
>> >> > devices becoming exponential with the number of features: we have device
>> >> > per feature.
>> >> >
>> >> > I understand that RTC does something like this.
>> >> 
>> >> And it is wrong :)  I sent a patch to fix it properly, but we have the
>> >> problem of backward compatibility with kvm.
>> >> 
>> >> Forget msix for virtio, virtio has the problem already with pci.
>> > What is wrong about it?
>> 
>> See below, we are changing the state to one table, and tables don't have
>> neither if's or whiles (we have a limited for that just walks arrays).
>
> Let's just bite the bullet and add support for if's?  It's not like it's
> hard to invent 'struct vmstate_condition' or some such.

I have to do it.  The problem is not adding an optional field, is adding
it conditionally on _what_, and that _what_ should also be ideally on vmstate.

Later, Juan.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]