| /openbmc/qemu/include/hw/virtio/ |
| H A D | vhost-backend.h | 42 struct vhost_dev; 54 typedef int (*vhost_backend_init)(struct vhost_dev *dev, void *opaque, 56 typedef int (*vhost_backend_cleanup)(struct vhost_dev *dev); 57 typedef int (*vhost_backend_memslots_limit)(struct vhost_dev *dev); 59 typedef int (*vhost_net_set_backend_op)(struct vhost_dev *dev, 61 typedef int (*vhost_net_set_mtu_op)(struct vhost_dev *dev, uint16_t mtu); 62 typedef int (*vhost_scsi_set_endpoint_op)(struct vhost_dev *dev, 64 typedef int (*vhost_scsi_clear_endpoint_op)(struct vhost_dev *dev, 66 typedef int (*vhost_scsi_get_abi_version_op)(struct vhost_dev *dev, 68 typedef int (*vhost_set_log_base_op)(struct vhost_dev *dev, uint64_t base, [all …]
|
| H A D | vhost.h | 40 struct vhost_dev *dev; 57 struct vhost_dev; 59 struct vhost_dev *hdev; 69 int (*vhost_dev_config_notifier)(struct vhost_dev *dev); 79 struct vhost_dev { struct 132 QLIST_ENTRY(vhost_dev) entry; argument 133 QLIST_ENTRY(vhost_dev) logdev_entry; 144 struct vhost_dev dev; argument 169 int vhost_dev_init(struct vhost_dev *hdev, void *opaque, 177 void vhost_dev_cleanup(struct vhost_dev *hdev); [all …]
|
| H A D | vhost-user-scmi.h | 23 struct vhost_dev vhost_dev; member
|
| H A D | vhost-user-fs.h | 38 struct vhost_dev vhost_dev; member
|
| H A D | vhost-user-base.h | 31 struct vhost_dev vhost_dev; member
|
| H A D | virtio-dmabuf.h | 58 bool virtio_add_vhost_device(QemuUUID *uuid, struct vhost_dev *dev); 83 struct vhost_dev *virtio_lookup_vhost_device(const QemuUUID *uuid);
|
| H A D | vhost-vsock-common.h | 32 struct vhost_dev vhost_dev; member
|
| H A D | vdpa-dev.h | 33 struct vhost_dev dev;
|
| H A D | vhost-user-blk.h | 37 struct vhost_dev dev;
|
| /openbmc/qemu/hw/virtio/ |
| H A D | vhost-backend.c | 23 static int vhost_kernel_call(struct vhost_dev *dev, unsigned long int request, in vhost_kernel_call() 35 static int vhost_kernel_init(struct vhost_dev *dev, void *opaque, Error **errp) in vhost_kernel_init() 44 static int vhost_kernel_cleanup(struct vhost_dev *dev) in vhost_kernel_cleanup() 53 static int vhost_kernel_memslots_limit(struct vhost_dev *dev) in vhost_kernel_memslots_limit() 72 static int vhost_kernel_net_set_backend(struct vhost_dev *dev, in vhost_kernel_net_set_backend() 78 static int vhost_kernel_scsi_set_endpoint(struct vhost_dev *dev, in vhost_kernel_scsi_set_endpoint() 84 static int vhost_kernel_scsi_clear_endpoint(struct vhost_dev *dev, in vhost_kernel_scsi_clear_endpoint() 90 static int vhost_kernel_scsi_get_abi_version(struct vhost_dev *dev, int *version) in vhost_kernel_scsi_get_abi_version() 95 static int vhost_kernel_set_log_base(struct vhost_dev *dev, uint64_t base, in vhost_kernel_set_log_base() 101 static int vhost_kernel_set_mem_table(struct vhost_dev *dev, in vhost_kernel_set_mem_table() [all …]
|
| H A D | vhost-user-scmi.c | 39 struct vhost_dev *vhost_dev = &scmi->vhost_dev; in vu_scmi_start() local 47 ret = vhost_dev_enable_notifiers(vhost_dev, vdev); in vu_scmi_start() 53 ret = k->set_guest_notifiers(qbus->parent, vhost_dev->nvqs, true); in vu_scmi_start() 59 vhost_ack_features(vhost_dev, feature_bits, vdev->guest_features); in vu_scmi_start() 61 ret = vhost_dev_start(vhost_dev, vdev, true); in vu_scmi_start() 73 for (i = 0; i < scmi->vhost_dev.nvqs; i++) { in vu_scmi_start() 74 vhost_virtqueue_mask(vhost_dev, vdev, i, false); in vu_scmi_start() 79 k->set_guest_notifiers(qbus->parent, vhost_dev->nvqs, false); in vu_scmi_start() 81 vhost_dev_disable_notifiers(vhost_dev, vdev); in vu_scmi_start() 91 struct vhost_dev *vhost_dev = &scmi->vhost_dev; in vu_scmi_stop() local [all …]
|
| H A D | vhost-user-base.c | 32 ret = vhost_dev_enable_notifiers(&vub->vhost_dev, vdev); in vub_start() 38 ret = k->set_guest_notifiers(qbus->parent, vub->vhost_dev.nvqs, true); in vub_start() 44 vub->vhost_dev.acked_features = vdev->guest_features; in vub_start() 46 ret = vhost_dev_start(&vub->vhost_dev, vdev, true); in vub_start() 57 for (i = 0; i < vub->vhost_dev.nvqs; i++) { in vub_start() 58 vhost_virtqueue_mask(&vub->vhost_dev, vdev, i, false); in vub_start() 64 k->set_guest_notifiers(qbus->parent, vub->vhost_dev.nvqs, false); in vub_start() 66 vhost_dev_disable_notifiers(&vub->vhost_dev, vdev); in vub_start() 80 ret = vhost_dev_stop(&vub->vhost_dev, vdev, true); in vub_stop() 82 if (k->set_guest_notifiers(qbus->parent, vub->vhost_dev.nvqs, false) < 0) { in vub_stop() [all …]
|
| H A D | vhost-vsock-common.c | 38 features = vhost_get_features(&vvc->vhost_dev, feature_bits, features); in vhost_vsock_common_get_features() 61 ret = vhost_dev_enable_notifiers(&vvc->vhost_dev, vdev); in vhost_vsock_common_start() 67 ret = k->set_guest_notifiers(qbus->parent, vvc->vhost_dev.nvqs, true); in vhost_vsock_common_start() 73 vvc->vhost_dev.acked_features = vdev->guest_features; in vhost_vsock_common_start() 74 ret = vhost_dev_start(&vvc->vhost_dev, vdev, true); in vhost_vsock_common_start() 85 for (i = 0; i < vvc->vhost_dev.nvqs; i++) { in vhost_vsock_common_start() 86 vhost_virtqueue_mask(&vvc->vhost_dev, vdev, i, false); in vhost_vsock_common_start() 92 k->set_guest_notifiers(qbus->parent, vvc->vhost_dev.nvqs, false); in vhost_vsock_common_start() 94 vhost_dev_disable_notifiers(&vvc->vhost_dev, vdev); in vhost_vsock_common_start() 109 ret = vhost_dev_stop(&vvc->vhost_dev, vdev, true); in vhost_vsock_common_stop() [all …]
|
| H A D | vhost-user-fs.c | 67 ret = vhost_dev_enable_notifiers(&fs->vhost_dev, vdev); in vuf_start() 73 ret = k->set_guest_notifiers(qbus->parent, fs->vhost_dev.nvqs, true); in vuf_start() 79 fs->vhost_dev.acked_features = vdev->guest_features; in vuf_start() 80 ret = vhost_dev_start(&fs->vhost_dev, vdev, true); in vuf_start() 91 for (i = 0; i < fs->vhost_dev.nvqs; i++) { in vuf_start() 92 vhost_virtqueue_mask(&fs->vhost_dev, vdev, i, false); in vuf_start() 98 k->set_guest_notifiers(qbus->parent, fs->vhost_dev.nvqs, false); in vuf_start() 100 vhost_dev_disable_notifiers(&fs->vhost_dev, vdev); in vuf_start() 114 ret = vhost_dev_stop(&fs->vhost_dev, vdev, true); in vuf_stop() 116 if (k->set_guest_notifiers(qbus->parent, fs->vhost_dev.nvqs, false) < 0) { in vuf_stop() [all …]
|
| H A D | vhost.c | 48 static QLIST_HEAD(, vhost_dev) vhost_log_devs[VHOST_BACKEND_TYPE_MAX]; 50 static QLIST_HEAD(, vhost_dev) vhost_devices = 56 struct vhost_dev *hdev; in vhost_get_max_memslots() 67 struct vhost_dev *hdev; in vhost_get_free_memslots() 84 static void vhost_dev_sync_region(struct vhost_dev *dev, in vhost_dev_sync_region() 129 bool vhost_dev_has_iommu(struct vhost_dev *dev) in vhost_dev_has_iommu() 147 static inline bool vhost_dev_should_log(struct vhost_dev *dev) in vhost_dev_should_log() 156 static inline void vhost_dev_elect_mem_logger(struct vhost_dev *hdev, bool add) in vhost_dev_elect_mem_logger() 188 static int vhost_sync_dirty_bitmap(struct vhost_dev *dev, in vhost_sync_dirty_bitmap() 273 struct vhost_dev *dev = container_of(listener, struct vhost_dev, in vhost_log_sync() [all …]
|
| H A D | vhost-user-vsock.c | 36 static int vuv_handle_config_change(struct vhost_dev *dev) in vuv_handle_config_change() 63 if (vhost_dev_is_started(&vvc->vhost_dev) == should_start) { in vuv_set_status() 87 features = vhost_get_features(&vvc->vhost_dev, user_feature_bits, features); in vuv_get_features() 115 vhost_dev_set_config_notifier(&vvc->vhost_dev, &vsock_ops); in vuv_device_realize() 117 ret = vhost_dev_init(&vvc->vhost_dev, &vsock->vhost_user, in vuv_device_realize() 123 ret = vhost_dev_get_config(&vvc->vhost_dev, (uint8_t *)&vsock->vsockcfg, in vuv_device_realize() 132 vhost_dev_cleanup(&vvc->vhost_dev); in vuv_device_realize() 147 vhost_dev_cleanup(&vvc->vhost_dev); in vuv_device_unrealize()
|
| H A D | vhost-vsock.c | 37 const VhostOps *vhost_ops = vvc->vhost_dev.vhost_ops; in vhost_vsock_set_guest_cid() 44 ret = vhost_ops->vhost_vsock_set_guest_cid(&vvc->vhost_dev, in vhost_vsock_set_guest_cid() 55 const VhostOps *vhost_ops = vvc->vhost_dev.vhost_ops; in vhost_vsock_set_running() 62 ret = vhost_ops->vhost_vsock_set_running(&vvc->vhost_dev, start); in vhost_vsock_set_running() 76 if (vhost_dev_is_started(&vvc->vhost_dev) == should_start) { in vhost_vsock_set_status() 172 ret = vhost_dev_init(&vvc->vhost_dev, (void *)(uintptr_t)vhostfd, in vhost_vsock_device_realize() 192 vhost_dev_cleanup(&vvc->vhost_dev); in vhost_vsock_device_realize() 205 vhost_dev_cleanup(&vvc->vhost_dev); in vhost_vsock_device_unrealize()
|
| H A D | virtio-hmp-cmds.c | 120 s->name, s->vhost_dev ? "(vhost)" : ""); in hmp_virtio_status() 156 if (s->vhost_dev) { in hmp_virtio_status() 159 s->vhost_dev->nvqs); in hmp_virtio_status() 161 s->vhost_dev->vq_index); in hmp_virtio_status() 163 s->vhost_dev->max_queues); in hmp_virtio_status() 165 s->vhost_dev->n_mem_sections); in hmp_virtio_status() 167 s->vhost_dev->n_tmp_sections); in hmp_virtio_status() 169 s->vhost_dev->backend_cap); in hmp_virtio_status() 171 s->vhost_dev->log_enabled ? "true" : "false"); in hmp_virtio_status() 173 s->vhost_dev->log_size); in hmp_virtio_status() [all …]
|
| H A D | vhost-vdpa.c | 504 static int vhost_vdpa_call(struct vhost_dev *dev, unsigned long int request, in vhost_vdpa_call() 517 static int vhost_vdpa_add_status(struct vhost_dev *dev, uint8_t status) in vhost_vdpa_add_status() 565 static bool vhost_vdpa_first_dev(struct vhost_dev *dev) in vhost_vdpa_first_dev() 572 static bool vhost_vdpa_last_dev(struct vhost_dev *dev) in vhost_vdpa_last_dev() 577 static int vhost_vdpa_get_dev_features(struct vhost_dev *dev, in vhost_vdpa_get_dev_features() 587 static void vhost_vdpa_init_svq(struct vhost_dev *hdev, struct vhost_vdpa *v) in vhost_vdpa_init_svq() 602 static int vhost_vdpa_set_backend_cap(struct vhost_dev *dev) in vhost_vdpa_set_backend_cap() 632 static int vhost_vdpa_init(struct vhost_dev *dev, void *opaque, Error **errp) in vhost_vdpa_init() 686 static void vhost_vdpa_host_notifier_uninit(struct vhost_dev *dev, in vhost_vdpa_host_notifier_uninit() 704 static int vhost_vdpa_host_notifier_init(struct vhost_dev *dev, int queue_index) in vhost_vdpa_host_notifier_init() [all …]
|
| H A D | vhost-user.c | 243 struct vhost_dev *dev; 275 static int vhost_user_read_header(struct vhost_dev *dev, VhostUserMsg *msg) in vhost_user_read_header() 303 static int vhost_user_read(struct vhost_dev *dev, VhostUserMsg *msg) in vhost_user_read() 338 static int process_message_reply(struct vhost_dev *dev, in process_message_reply() 382 static int vhost_user_write(struct vhost_dev *dev, VhostUserMsg *msg, in vhost_user_write() 423 int vhost_user_gpu_set_socket(struct vhost_dev *dev, int fd) in vhost_user_gpu_set_socket() 433 static int vhost_user_set_log_base(struct vhost_dev *dev, uint64_t base, in vhost_user_set_log_base() 506 struct vhost_dev *dev, in vhost_user_fill_set_mem_table_msg() 569 static void scrub_shadow_regions(struct vhost_dev *dev, in scrub_shadow_regions() 659 static int send_remove_regions(struct vhost_dev *dev, in send_remove_regions() [all …]
|
| H A D | virtio-qmp.c | 780 struct vhost_dev *hdev = vdc->get_vhost(vdev); in qmp_x_query_virtio_status() 782 status->vhost_dev = g_new0(VhostStatus, 1); in qmp_x_query_virtio_status() 783 status->vhost_dev->n_mem_sections = hdev->n_mem_sections; in qmp_x_query_virtio_status() 784 status->vhost_dev->n_tmp_sections = hdev->n_tmp_sections; in qmp_x_query_virtio_status() 785 status->vhost_dev->nvqs = hdev->nvqs; in qmp_x_query_virtio_status() 786 status->vhost_dev->vq_index = hdev->vq_index; in qmp_x_query_virtio_status() 787 status->vhost_dev->features = in qmp_x_query_virtio_status() 789 status->vhost_dev->acked_features = in qmp_x_query_virtio_status() 791 status->vhost_dev->backend_features = in qmp_x_query_virtio_status() 793 status->vhost_dev->protocol_features = in qmp_x_query_virtio_status() [all …]
|
| /openbmc/qemu/hw/display/ |
| H A D | virtio-dmabuf.c | 69 bool virtio_add_vhost_device(QemuUUID *uuid, struct vhost_dev *dev) in virtio_add_vhost_device() 120 struct vhost_dev *virtio_lookup_vhost_device(const QemuUUID *uuid) in virtio_lookup_vhost_device() 127 return (struct vhost_dev *) vso->value; in virtio_lookup_vhost_device()
|
| /openbmc/qemu/tests/unit/ |
| H A D | test-virtio-dmabuf.c | 46 struct vhost_dev *dev = g_new0(struct vhost_dev, 1); in test_add_remove_dev() 78 struct vhost_dev *dev = NULL; in test_add_invalid_resource()
|
| /openbmc/qemu/qapi/ |
| H A D | virtio.json | 76 # @n-mem-sections: vhost_dev n_mem_sections 78 # @n-tmp-sections: vhost_dev n_tmp_sections 80 # @nvqs: vhost_dev nvqs (number of virtqueues being used) 82 # @vq-index: vhost_dev vq_index 84 # @features: vhost_dev features 86 # @acked-features: vhost_dev acked_features 88 # @backend-features: vhost_dev backend_features 90 # @protocol-features: vhost_dev protocol_features 92 # @max-queues: vhost_dev max_queues 94 # @backend-cap: vhost_dev backend_cap [all …]
|
| /openbmc/qemu/include/system/ |
| H A D | vhost-user-backend.h | 37 struct vhost_dev dev;
|