Lines Matching refs:vmsg
489 vmsg_close_fds(VhostUserMsg *vmsg) in vmsg_close_fds() argument
493 for (i = 0; i < vmsg->fd_num; i++) { in vmsg_close_fds()
494 close(vmsg->fds[i]); in vmsg_close_fds()
499 static void vmsg_set_reply_u64(VhostUserMsg *vmsg, uint64_t val) in vmsg_set_reply_u64() argument
501 vmsg->flags = 0; /* defaults will be set by vu_send_reply() */ in vmsg_set_reply_u64()
502 vmsg->size = sizeof(vmsg->payload.u64); in vmsg_set_reply_u64()
503 vmsg->payload.u64 = val; in vmsg_set_reply_u64()
504 vmsg->fd_num = 0; in vmsg_set_reply_u64()
537 vu_message_read_default(VuDev *dev, int conn_fd, VhostUserMsg *vmsg) in vu_message_read_default() argument
541 .iov_base = (char *)vmsg, in vu_message_read_default()
563 vmsg->fd_num = 0; in vu_message_read_default()
570 vmsg->fd_num = fd_size / sizeof(int); in vu_message_read_default()
571 assert(vmsg->fd_num <= VHOST_MEMORY_BASELINE_NREGIONS); in vu_message_read_default()
572 memcpy(vmsg->fds, CMSG_DATA(cmsg), fd_size); in vu_message_read_default()
577 if (vmsg->size > sizeof(vmsg->payload)) { in vu_message_read_default()
581 vmsg->request, vmsg->size, sizeof(vmsg->payload)); in vu_message_read_default()
585 if (vmsg->size) { in vu_message_read_default()
587 rc = read(conn_fd, &vmsg->payload, vmsg->size); in vu_message_read_default()
595 assert((uint32_t)rc == vmsg->size); in vu_message_read_default()
601 vmsg_close_fds(vmsg); in vu_message_read_default()
607 vu_message_write(VuDev *dev, int conn_fd, VhostUserMsg *vmsg) in vu_message_write() argument
610 uint8_t *p = (uint8_t *)vmsg; in vu_message_write()
613 .iov_base = (char *)vmsg, in vu_message_write()
624 assert(vmsg->fd_num <= VHOST_MEMORY_BASELINE_NREGIONS); in vu_message_write()
625 if (vmsg->fd_num > 0) { in vu_message_write()
626 size_t fdsize = vmsg->fd_num * sizeof(int); in vu_message_write()
632 memcpy(CMSG_DATA(cmsg), vmsg->fds, fdsize); in vu_message_write()
647 if (vmsg->size) { in vu_message_write()
649 if (vmsg->data) { in vu_message_write()
650 rc = write(conn_fd, vmsg->data, vmsg->size); in vu_message_write()
652 rc = write(conn_fd, p + VHOST_USER_HDR_SIZE, vmsg->size); in vu_message_write()
666 vu_send_reply(VuDev *dev, int conn_fd, VhostUserMsg *vmsg) in vu_send_reply() argument
669 vmsg->flags &= ~VHOST_USER_VERSION_MASK; in vu_send_reply()
670 vmsg->flags |= VHOST_USER_VERSION; in vu_send_reply()
671 vmsg->flags |= VHOST_USER_REPLY_MASK; in vu_send_reply()
673 return vu_message_write(dev, conn_fd, vmsg); in vu_send_reply()
682 vu_process_message_reply(VuDev *dev, const VhostUserMsg *vmsg) in vu_process_message_reply() argument
687 if ((vmsg->flags & VHOST_USER_NEED_REPLY_MASK) == 0) { in vu_process_message_reply()
696 if (msg_reply.request != vmsg->request) { in vu_process_message_reply()
698 vmsg->request, msg_reply.request); in vu_process_message_reply()
772 vu_get_features_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_get_features_exec() argument
774 vmsg->payload.u64 = in vu_get_features_exec()
789 vmsg->payload.u64 |= dev->iface->get_features(dev); in vu_get_features_exec()
792 vmsg->size = sizeof(vmsg->payload.u64); in vu_get_features_exec()
793 vmsg->fd_num = 0; in vu_get_features_exec()
795 DPRINT("Sending back to guest u64: 0x%016"PRIx64"\n", vmsg->payload.u64); in vu_get_features_exec()
811 vu_set_features_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_features_exec() argument
813 DPRINT("u64: 0x%016"PRIx64"\n", vmsg->payload.u64); in vu_set_features_exec()
815 dev->features = vmsg->payload.u64; in vu_set_features_exec()
837 vu_set_owner_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_owner_exec() argument
859 vu_reset_device_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_reset_device_exec() argument
948 vu_add_mem_reg(VuDev *dev, VhostUserMsg *vmsg) { in vu_add_mem_reg() argument
949 VhostUserMemoryRegion m = vmsg->payload.memreg.region, *msg_region = &m; in vu_add_mem_reg()
951 if (vmsg->fd_num != 1) { in vu_add_mem_reg()
952 vmsg_close_fds(vmsg); in vu_add_mem_reg()
954 "should be sent for this message type", vmsg->fd_num); in vu_add_mem_reg()
958 if (vmsg->size < VHOST_USER_MEM_REG_SIZE) { in vu_add_mem_reg()
959 close(vmsg->fds[0]); in vu_add_mem_reg()
962 VHOST_USER_MEM_REG_SIZE, vmsg->size); in vu_add_mem_reg()
967 close(vmsg->fds[0]); in vu_add_mem_reg()
980 vmsg->size == sizeof(vmsg->payload.u64) && in vu_add_mem_reg()
981 vmsg->payload.u64 == 0) { in vu_add_mem_reg()
986 _vu_add_mem_reg(dev, msg_region, vmsg->fds[0]); in vu_add_mem_reg()
987 close(vmsg->fds[0]); in vu_add_mem_reg()
991 vmsg->fd_num = 0; in vu_add_mem_reg()
1012 vu_rem_mem_reg(VuDev *dev, VhostUserMsg *vmsg) { in vu_rem_mem_reg() argument
1013 VhostUserMemoryRegion m = vmsg->payload.memreg.region, *msg_region = &m; in vu_rem_mem_reg()
1017 if (vmsg->fd_num > 1) { in vu_rem_mem_reg()
1018 vmsg_close_fds(vmsg); in vu_rem_mem_reg()
1020 "should be sent for this message type", vmsg->fd_num); in vu_rem_mem_reg()
1024 if (vmsg->size < VHOST_USER_MEM_REG_SIZE) { in vu_rem_mem_reg()
1025 vmsg_close_fds(vmsg); in vu_rem_mem_reg()
1028 VHOST_USER_MEM_REG_SIZE, vmsg->size); in vu_rem_mem_reg()
1044 vmsg_close_fds(vmsg); in vu_rem_mem_reg()
1068 vmsg_close_fds(vmsg); in vu_rem_mem_reg()
1074 vu_get_shared_object(VuDev *dev, VhostUserMsg *vmsg) in vu_get_shared_object() argument
1080 dev, &vmsg->payload.object.uuid[0]); in vu_get_shared_object()
1084 vmsg->fds[fd_num++] = dmabuf_fd; in vu_get_shared_object()
1086 vmsg->fd_num = fd_num; in vu_get_shared_object()
1092 vu_set_mem_table_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_mem_table_exec() argument
1094 VhostUserMemory m = vmsg->payload.memory, *memory = &m; in vu_set_mem_table_exec()
1101 _vu_add_mem_reg(dev, &memory->regions[i], vmsg->fds[i]); in vu_set_mem_table_exec()
1102 close(vmsg->fds[i]); in vu_set_mem_table_exec()
1107 vmsg->fd_num = 0; in vu_set_mem_table_exec()
1108 if (!vu_send_reply(dev, dev->sock, vmsg)) { in vu_set_mem_table_exec()
1117 if (!dev->read_msg(dev, dev->sock, vmsg) || in vu_set_mem_table_exec()
1118 vmsg->size != sizeof(vmsg->payload.u64) || in vu_set_mem_table_exec()
1119 vmsg->payload.u64 != 0) { in vu_set_mem_table_exec()
1141 vu_set_log_base_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_log_base_exec() argument
1147 if (vmsg->fd_num != 1 || in vu_set_log_base_exec()
1148 vmsg->size != sizeof(vmsg->payload.log)) { in vu_set_log_base_exec()
1153 fd = vmsg->fds[0]; in vu_set_log_base_exec()
1154 log_mmap_offset = vmsg->payload.log.mmap_offset; in vu_set_log_base_exec()
1155 log_mmap_size = vmsg->payload.log.mmap_size; in vu_set_log_base_exec()
1172 vmsg->size = sizeof(vmsg->payload.u64); in vu_set_log_base_exec()
1173 vmsg->fd_num = 0; in vu_set_log_base_exec()
1179 vu_set_log_fd_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_log_fd_exec() argument
1181 if (vmsg->fd_num != 1) { in vu_set_log_fd_exec()
1189 dev->log_call_fd = vmsg->fds[0]; in vu_set_log_fd_exec()
1190 DPRINT("Got log_call_fd: %d\n", vmsg->fds[0]); in vu_set_log_fd_exec()
1196 vu_set_vring_num_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_vring_num_exec() argument
1198 unsigned int index = vmsg->payload.state.index; in vu_set_vring_num_exec()
1199 unsigned int num = vmsg->payload.state.num; in vu_set_vring_num_exec()
1209 vu_set_vring_addr_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_vring_addr_exec() argument
1211 struct vhost_vring_addr addr = vmsg->payload.addr, *vra = &addr; in vu_set_vring_addr_exec()
1252 vu_set_vring_base_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_vring_base_exec() argument
1254 unsigned int index = vmsg->payload.state.index; in vu_set_vring_base_exec()
1255 unsigned int num = vmsg->payload.state.num; in vu_set_vring_base_exec()
1265 vu_get_vring_base_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_get_vring_base_exec() argument
1267 unsigned int index = vmsg->payload.state.index; in vu_get_vring_base_exec()
1270 vmsg->payload.state.num = dev->vq[index].last_avail_idx; in vu_get_vring_base_exec()
1271 vmsg->size = sizeof(vmsg->payload.state); in vu_get_vring_base_exec()
1292 vu_check_queue_msg_file(VuDev *dev, VhostUserMsg *vmsg) in vu_check_queue_msg_file() argument
1294 int index = vmsg->payload.u64 & VHOST_USER_VRING_IDX_MASK; in vu_check_queue_msg_file()
1295 bool nofd = vmsg->payload.u64 & VHOST_USER_VRING_NOFD_MASK; in vu_check_queue_msg_file()
1298 vmsg_close_fds(vmsg); in vu_check_queue_msg_file()
1304 vmsg_close_fds(vmsg); in vu_check_queue_msg_file()
1308 if (vmsg->fd_num != 1) { in vu_check_queue_msg_file()
1309 vmsg_close_fds(vmsg); in vu_check_queue_msg_file()
1310 vu_panic(dev, "Invalid fds in request: %d", vmsg->request); in vu_check_queue_msg_file()
1402 vu_set_vring_kick_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_vring_kick_exec() argument
1404 int index = vmsg->payload.u64 & VHOST_USER_VRING_IDX_MASK; in vu_set_vring_kick_exec()
1405 bool nofd = vmsg->payload.u64 & VHOST_USER_VRING_NOFD_MASK; in vu_set_vring_kick_exec()
1407 DPRINT("u64: 0x%016"PRIx64"\n", vmsg->payload.u64); in vu_set_vring_kick_exec()
1409 if (!vu_check_queue_msg_file(dev, vmsg)) { in vu_set_vring_kick_exec()
1419 dev->vq[index].kick_fd = nofd ? -1 : vmsg->fds[0]; in vu_set_vring_kick_exec()
1463 VhostUserMsg vmsg = { in vu_set_queue_host_notifier() local
1466 .size = sizeof(vmsg.payload.area), in vu_set_queue_host_notifier()
1475 vmsg.payload.area.u64 |= VHOST_USER_VRING_NOFD_MASK; in vu_set_queue_host_notifier()
1477 vmsg.fds[fd_num++] = fd; in vu_set_queue_host_notifier()
1480 vmsg.fd_num = fd_num; in vu_set_queue_host_notifier()
1487 if (!vu_message_write(dev, dev->backend_fd, &vmsg)) { in vu_set_queue_host_notifier()
1493 return vu_process_message_reply(dev, &vmsg); in vu_set_queue_host_notifier()
1544 vu_send_message(VuDev *dev, VhostUserMsg *vmsg) in vu_send_message() argument
1548 if (!vu_message_write(dev, dev->backend_fd, vmsg)) { in vu_send_message()
1596 vu_set_vring_call_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_vring_call_exec() argument
1598 int index = vmsg->payload.u64 & VHOST_USER_VRING_IDX_MASK; in vu_set_vring_call_exec()
1599 bool nofd = vmsg->payload.u64 & VHOST_USER_VRING_NOFD_MASK; in vu_set_vring_call_exec()
1601 DPRINT("u64: 0x%016"PRIx64"\n", vmsg->payload.u64); in vu_set_vring_call_exec()
1603 if (!vu_check_queue_msg_file(dev, vmsg)) { in vu_set_vring_call_exec()
1612 dev->vq[index].call_fd = nofd ? -1 : vmsg->fds[0]; in vu_set_vring_call_exec()
1615 if (dev->vq[index].call_fd != -1 && eventfd_write(vmsg->fds[0], 1)) { in vu_set_vring_call_exec()
1625 vu_set_vring_err_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_vring_err_exec() argument
1627 int index = vmsg->payload.u64 & VHOST_USER_VRING_IDX_MASK; in vu_set_vring_err_exec()
1628 bool nofd = vmsg->payload.u64 & VHOST_USER_VRING_NOFD_MASK; in vu_set_vring_err_exec()
1630 DPRINT("u64: 0x%016"PRIx64"\n", vmsg->payload.u64); in vu_set_vring_err_exec()
1632 if (!vu_check_queue_msg_file(dev, vmsg)) { in vu_set_vring_err_exec()
1641 dev->vq[index].err_fd = nofd ? -1 : vmsg->fds[0]; in vu_set_vring_err_exec()
1647 vu_get_protocol_features_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_get_protocol_features_exec() argument
1688 vmsg_set_reply_u64(vmsg, features); in vu_get_protocol_features_exec()
1693 vu_set_protocol_features_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_protocol_features_exec() argument
1695 uint64_t features = vmsg->payload.u64; in vu_set_protocol_features_exec()
1699 dev->protocol_features = vmsg->payload.u64; in vu_set_protocol_features_exec()
1728 vu_get_queue_num_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_get_queue_num_exec() argument
1730 vmsg_set_reply_u64(vmsg, dev->max_queues); in vu_get_queue_num_exec()
1735 vu_set_vring_enable_exec(VuDev *dev, VhostUserMsg *vmsg) in vu_set_vring_enable_exec() argument
1737 unsigned int index = vmsg->payload.state.index; in vu_set_vring_enable_exec()
1738 unsigned int enable = vmsg->payload.state.num; in vu_set_vring_enable_exec()
1753 vu_set_backend_req_fd(VuDev *dev, VhostUserMsg *vmsg) in vu_set_backend_req_fd() argument
1755 if (vmsg->fd_num != 1) { in vu_set_backend_req_fd()
1756 vu_panic(dev, "Invalid backend_req_fd message (%d fd's)", vmsg->fd_num); in vu_set_backend_req_fd()
1763 dev->backend_fd = vmsg->fds[0]; in vu_set_backend_req_fd()
1764 DPRINT("Got backend_fd: %d\n", vmsg->fds[0]); in vu_set_backend_req_fd()
1770 vu_get_config(VuDev *dev, VhostUserMsg *vmsg) in vu_get_config() argument
1775 ret = dev->iface->get_config(dev, vmsg->payload.config.region, in vu_get_config()
1776 vmsg->payload.config.size); in vu_get_config()
1781 vmsg->size = 0; in vu_get_config()
1788 vu_set_config(VuDev *dev, VhostUserMsg *vmsg) in vu_set_config() argument
1793 ret = dev->iface->set_config(dev, vmsg->payload.config.region, in vu_set_config()
1794 vmsg->payload.config.offset, in vu_set_config()
1795 vmsg->payload.config.size, in vu_set_config()
1796 vmsg->payload.config.flags); in vu_set_config()
1806 vu_set_postcopy_advise(VuDev *dev, VhostUserMsg *vmsg) in vu_set_postcopy_advise() argument
1812 vmsg->size = 0; in vu_set_postcopy_advise()
1836 vmsg->fd_num = 1; in vu_set_postcopy_advise()
1837 vmsg->fds[0] = dev->postcopy_ufd; in vu_set_postcopy_advise()
1842 vu_set_postcopy_listen(VuDev *dev, VhostUserMsg *vmsg) in vu_set_postcopy_listen() argument
1846 vmsg_set_reply_u64(vmsg, -1); in vu_set_postcopy_listen()
1851 vmsg_set_reply_u64(vmsg, 0); in vu_set_postcopy_listen()
1856 vu_set_postcopy_end(VuDev *dev, VhostUserMsg *vmsg) in vu_set_postcopy_end() argument
1866 vmsg_set_reply_u64(vmsg, 0); in vu_set_postcopy_end()
1913 vu_get_inflight_fd(VuDev *dev, VhostUserMsg *vmsg) in vu_get_inflight_fd() argument
1920 if (vmsg->size != sizeof(vmsg->payload.inflight)) { in vu_get_inflight_fd()
1921 vu_panic(dev, "Invalid get_inflight_fd message:%d", vmsg->size); in vu_get_inflight_fd()
1922 vmsg->payload.inflight.mmap_size = 0; in vu_get_inflight_fd()
1926 num_queues = vmsg->payload.inflight.num_queues; in vu_get_inflight_fd()
1927 queue_size = vmsg->payload.inflight.queue_size; in vu_get_inflight_fd()
1944 vmsg->payload.inflight.mmap_size = 0; in vu_get_inflight_fd()
1951 dev->inflight_info.size = vmsg->payload.inflight.mmap_size = mmap_size; in vu_get_inflight_fd()
1952 dev->inflight_info.fd = vmsg->fds[0] = fd; in vu_get_inflight_fd()
1953 vmsg->fd_num = 1; in vu_get_inflight_fd()
1954 vmsg->payload.inflight.mmap_offset = 0; in vu_get_inflight_fd()
1957 vmsg->payload.inflight.mmap_size); in vu_get_inflight_fd()
1959 vmsg->payload.inflight.mmap_offset); in vu_get_inflight_fd()
1965 vu_set_inflight_fd(VuDev *dev, VhostUserMsg *vmsg) in vu_set_inflight_fd() argument
1972 if (vmsg->fd_num != 1 || in vu_set_inflight_fd()
1973 vmsg->size != sizeof(vmsg->payload.inflight)) { in vu_set_inflight_fd()
1975 vmsg->size, vmsg->fd_num); in vu_set_inflight_fd()
1979 fd = vmsg->fds[0]; in vu_set_inflight_fd()
1980 mmap_size = vmsg->payload.inflight.mmap_size; in vu_set_inflight_fd()
1981 mmap_offset = vmsg->payload.inflight.mmap_offset; in vu_set_inflight_fd()
1982 num_queues = vmsg->payload.inflight.num_queues; in vu_set_inflight_fd()
1983 queue_size = vmsg->payload.inflight.queue_size; in vu_set_inflight_fd()
2020 vu_handle_vring_kick(VuDev *dev, VhostUserMsg *vmsg) in vu_handle_vring_kick() argument
2022 unsigned int index = vmsg->payload.state.index; in vu_handle_vring_kick()
2047 static bool vu_handle_get_max_memslots(VuDev *dev, VhostUserMsg *vmsg) in vu_handle_get_max_memslots() argument
2049 vmsg_set_reply_u64(vmsg, VHOST_USER_MAX_RAM_SLOTS); in vu_handle_get_max_memslots()
2057 vu_process_message(VuDev *dev, VhostUserMsg *vmsg) in vu_process_message() argument
2063 DPRINT("Request: %s (%d)\n", vu_request_to_string(vmsg->request), in vu_process_message()
2064 vmsg->request); in vu_process_message()
2065 DPRINT("Flags: 0x%x\n", vmsg->flags); in vu_process_message()
2066 DPRINT("Size: %u\n", vmsg->size); in vu_process_message()
2068 if (vmsg->fd_num) { in vu_process_message()
2071 for (i = 0; i < vmsg->fd_num; i++) { in vu_process_message()
2072 DPRINT(" %d", vmsg->fds[i]); in vu_process_message()
2078 dev->iface->process_msg(dev, vmsg, &do_reply)) { in vu_process_message()
2082 switch (vmsg->request) { in vu_process_message()
2084 return vu_get_features_exec(dev, vmsg); in vu_process_message()
2086 return vu_set_features_exec(dev, vmsg); in vu_process_message()
2088 return vu_get_protocol_features_exec(dev, vmsg); in vu_process_message()
2090 return vu_set_protocol_features_exec(dev, vmsg); in vu_process_message()
2092 return vu_set_owner_exec(dev, vmsg); in vu_process_message()
2094 return vu_reset_device_exec(dev, vmsg); in vu_process_message()
2096 return vu_set_mem_table_exec(dev, vmsg); in vu_process_message()
2098 return vu_set_log_base_exec(dev, vmsg); in vu_process_message()
2100 return vu_set_log_fd_exec(dev, vmsg); in vu_process_message()
2102 return vu_set_vring_num_exec(dev, vmsg); in vu_process_message()
2104 return vu_set_vring_addr_exec(dev, vmsg); in vu_process_message()
2106 return vu_set_vring_base_exec(dev, vmsg); in vu_process_message()
2108 return vu_get_vring_base_exec(dev, vmsg); in vu_process_message()
2110 return vu_set_vring_kick_exec(dev, vmsg); in vu_process_message()
2112 return vu_set_vring_call_exec(dev, vmsg); in vu_process_message()
2114 return vu_set_vring_err_exec(dev, vmsg); in vu_process_message()
2116 return vu_get_queue_num_exec(dev, vmsg); in vu_process_message()
2118 return vu_set_vring_enable_exec(dev, vmsg); in vu_process_message()
2120 return vu_set_backend_req_fd(dev, vmsg); in vu_process_message()
2122 return vu_get_config(dev, vmsg); in vu_process_message()
2124 return vu_set_config(dev, vmsg); in vu_process_message()
2129 return vu_set_postcopy_advise(dev, vmsg); in vu_process_message()
2131 return vu_set_postcopy_listen(dev, vmsg); in vu_process_message()
2133 return vu_set_postcopy_end(dev, vmsg); in vu_process_message()
2135 return vu_get_inflight_fd(dev, vmsg); in vu_process_message()
2137 return vu_set_inflight_fd(dev, vmsg); in vu_process_message()
2139 return vu_handle_vring_kick(dev, vmsg); in vu_process_message()
2141 return vu_handle_get_max_memslots(dev, vmsg); in vu_process_message()
2143 return vu_add_mem_reg(dev, vmsg); in vu_process_message()
2145 return vu_rem_mem_reg(dev, vmsg); in vu_process_message()
2147 return vu_get_shared_object(dev, vmsg); in vu_process_message()
2149 vmsg_close_fds(vmsg); in vu_process_message()
2150 vu_panic(dev, "Unhandled request: %d", vmsg->request); in vu_process_message()
2159 VhostUserMsg vmsg = { 0, }; in vu_dispatch() local
2163 if (!dev->read_msg(dev, dev->sock, &vmsg)) { in vu_dispatch()
2167 need_reply = vmsg.flags & VHOST_USER_NEED_REPLY_MASK; in vu_dispatch()
2169 reply_requested = vu_process_message(dev, &vmsg); in vu_dispatch()
2171 vmsg_set_reply_u64(&vmsg, 0); in vu_dispatch()
2180 if (!vu_send_reply(dev, dev->sock, &vmsg)) { in vu_dispatch()
2187 free(vmsg.data); in vu_dispatch()
2628 VhostUserMsg vmsg = { in _vu_queue_notify() local
2631 .size = sizeof(vmsg.payload.state), in _vu_queue_notify()
2641 vmsg.flags |= VHOST_USER_NEED_REPLY_MASK; in _vu_queue_notify()
2644 vu_message_write(dev, dev->backend_fd, &vmsg); in _vu_queue_notify()
2646 vu_message_read_default(dev, dev->backend_fd, &vmsg); in _vu_queue_notify()
2668 VhostUserMsg vmsg = { in vu_config_change_msg() local
2673 vu_message_write(dev, dev->backend_fd, &vmsg); in vu_config_change_msg()