|
@@ -18,6 +18,7 @@
|
|
#include "qapi/qapi-types-block.h"
|
|
#include "qapi/qapi-types-block.h"
|
|
#include "qapi/qapi-types-machine.h"
|
|
#include "qapi/qapi-types-machine.h"
|
|
#include "qapi/qapi-types-migration.h"
|
|
#include "qapi/qapi-types-migration.h"
|
|
|
|
+#include "qapi/qapi-visit-virtio.h"
|
|
#include "qapi/qmp/qerror.h"
|
|
#include "qapi/qmp/qerror.h"
|
|
#include "qemu/ctype.h"
|
|
#include "qemu/ctype.h"
|
|
#include "qemu/cutils.h"
|
|
#include "qemu/cutils.h"
|
|
@@ -1160,3 +1161,48 @@ const PropertyInfo qdev_prop_cpus390entitlement = {
|
|
.set = qdev_propinfo_set_enum,
|
|
.set = qdev_propinfo_set_enum,
|
|
.set_default_value = qdev_propinfo_set_default_value_enum,
|
|
.set_default_value = qdev_propinfo_set_default_value_enum,
|
|
};
|
|
};
|
|
|
|
+
|
|
|
|
+/* --- IOThreadVirtQueueMappingList --- */
|
|
|
|
+
|
|
|
|
+static void get_iothread_vq_mapping_list(Object *obj, Visitor *v,
|
|
|
|
+ const char *name, void *opaque, Error **errp)
|
|
|
|
+{
|
|
|
|
+ IOThreadVirtQueueMappingList **prop_ptr =
|
|
|
|
+ object_field_prop_ptr(obj, opaque);
|
|
|
|
+
|
|
|
|
+ visit_type_IOThreadVirtQueueMappingList(v, name, prop_ptr, errp);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+static void set_iothread_vq_mapping_list(Object *obj, Visitor *v,
|
|
|
|
+ const char *name, void *opaque, Error **errp)
|
|
|
|
+{
|
|
|
|
+ IOThreadVirtQueueMappingList **prop_ptr =
|
|
|
|
+ object_field_prop_ptr(obj, opaque);
|
|
|
|
+ IOThreadVirtQueueMappingList *list;
|
|
|
|
+
|
|
|
|
+ if (!visit_type_IOThreadVirtQueueMappingList(v, name, &list, errp)) {
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ qapi_free_IOThreadVirtQueueMappingList(*prop_ptr);
|
|
|
|
+ *prop_ptr = list;
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+static void release_iothread_vq_mapping_list(Object *obj,
|
|
|
|
+ const char *name, void *opaque)
|
|
|
|
+{
|
|
|
|
+ IOThreadVirtQueueMappingList **prop_ptr =
|
|
|
|
+ object_field_prop_ptr(obj, opaque);
|
|
|
|
+
|
|
|
|
+ qapi_free_IOThreadVirtQueueMappingList(*prop_ptr);
|
|
|
|
+ *prop_ptr = NULL;
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+const PropertyInfo qdev_prop_iothread_vq_mapping_list = {
|
|
|
|
+ .name = "IOThreadVirtQueueMappingList",
|
|
|
|
+ .description = "IOThread virtqueue mapping list [{\"iothread\":\"<id>\", "
|
|
|
|
+ "\"vqs\":[1,2,3,...]},...]",
|
|
|
|
+ .get = get_iothread_vq_mapping_list,
|
|
|
|
+ .set = set_iothread_vq_mapping_list,
|
|
|
|
+ .release = release_iothread_vq_mapping_list,
|
|
|
|
+};
|