On Mon, Jun 01, 2015 at 09:23:28AM +0200, Gerd Hoffmann wrote: > On Fr, 2015-05-29 at 16:53 +0200, Michael S. Tsirkin wrote: > > On Fri, May 29, 2015 at 09:51:20AM +0200, Gerd Hoffmann wrote: > > > Make features 64bit wide everywhere. Exception: command line flags > > > remain 32bit and are copyed into the lower 32 host_features at > > > initialization time. > > > > > > On migration a full 64bit guest_features field is sent if one of the > > > high bits is set, additionally to the lower 32bit guest_features field > > > which must stay for compatibility reasons. That way we send the lower > > > 32 feature bits twice, but that way the code is simpler because we don't > > > have to split and compose the 64bit features into two 32bit fields. > > > > > > This depends on "move host_features" patch by cornelia. > > > > > > Signed-off-by: Gerd Hoffmann <kra...@redhat.com> > > > > > > Thanks, this is very close to what I had in mind. > > Question: why do we need the feature_flags field? > > What's wrong with setting bits in host_features directly? > > DEFINE_PROP_BIT works on uint32_t. > > Alternative approach would be to introduce a DEFINE_PROP_BIT64 and use > that for DEFINE_VIRTIO_COMMON_FEATURES. > > cheers, > Gerd >
Yes - previous versions of this patch did exactly that. Can you do DEFINE_PROP_BIT64 please? We'll need DEFINE_PROP_BIT64 down the road anyway when we add properties > 32. If you prefer, I'm fine with this being a patch on top. Let me know. -- MST