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