virtio: add class_size to VirtioPCIDeviceTypeInfo

Needed when VirtioPCIClass subclasses have their own
class struct with some extra fields.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Message-id: 20190307080244.9011-2-kraxel@redhat.com
This commit is contained in:
Gerd Hoffmann 2019-03-07 09:02:42 +01:00
parent e2a18635a4
commit 8ea90ee690
2 changed files with 2 additions and 0 deletions

View File

@ -1935,6 +1935,7 @@ void virtio_pci_types_register(const VirtioPCIDeviceTypeInfo *t)
.parent = t->parent ? t->parent : TYPE_VIRTIO_PCI, .parent = t->parent ? t->parent : TYPE_VIRTIO_PCI,
.instance_size = t->instance_size, .instance_size = t->instance_size,
.instance_init = t->instance_init, .instance_init = t->instance_init,
.class_size = t->class_size,
.class_init = virtio_pci_base_class_init, .class_init = virtio_pci_base_class_init,
.class_data = (void *)t, .class_data = (void *)t,
.abstract = true, .abstract = true,

View File

@ -230,6 +230,7 @@ typedef struct VirtioPCIDeviceTypeInfo {
/* Same as TypeInfo fields: */ /* Same as TypeInfo fields: */
size_t instance_size; size_t instance_size;
size_t class_size;
void (*instance_init)(Object *obj); void (*instance_init)(Object *obj);
void (*class_init)(ObjectClass *klass, void *data); void (*class_init)(ObjectClass *klass, void *data);
} VirtioPCIDeviceTypeInfo; } VirtioPCIDeviceTypeInfo;