Il 01/08/2014 05:09, Ming Lei ha scritto: >>> >> Per virtio spec, only the feature is set, the VM can be allowed to >>> >> access the 'num_queues' field, and I didn't see any problem from >>> >> VM's view point. >>> >> >>> >> So could you explain why both dataplane and non-dataplane have >>> >> to support the feature. >> > >> > Because otherwise you change the guest ABI. > Sorry, I don't understand why the guest ABI is changed since > VM only parses 'num_queues' iff the feature is set, and the DATAPLANE > macro is determined during compiling.
Even recompiling the same version of QEMU should not change the guest ABI. Recompilation may affect which devices are present, but then the migration destination will not even start if something is broken. And as you pointed out, migration from dataplane to non-dataplane will break because you didn't convert callers of virtqueue_pop/push. Paolo