|
@@ -153,7 +153,6 @@ static void vhost_vdpa_listener_region_del(MemoryListener *listener,
|
|
|
hwaddr iova;
|
|
|
Int128 llend, llsize;
|
|
|
int ret;
|
|
|
- bool try_unmap = true;
|
|
|
|
|
|
if (vhost_vdpa_listener_skipped_section(section)) {
|
|
|
return;
|
|
@@ -176,11 +175,9 @@ static void vhost_vdpa_listener_region_del(MemoryListener *listener,
|
|
|
|
|
|
llsize = int128_sub(llend, int128_make64(iova));
|
|
|
|
|
|
- if (try_unmap) {
|
|
|
- ret = vhost_vdpa_dma_unmap(v, iova, int128_get64(llsize));
|
|
|
- if (ret) {
|
|
|
- error_report("vhost_vdpa dma unmap error!");
|
|
|
- }
|
|
|
+ ret = vhost_vdpa_dma_unmap(v, iova, int128_get64(llsize));
|
|
|
+ if (ret) {
|
|
|
+ error_report("vhost_vdpa dma unmap error!");
|
|
|
}
|
|
|
|
|
|
memory_region_unref(section->mr);
|
|
@@ -320,10 +317,8 @@ static int vhost_vdpa_set_config(struct vhost_dev *dev, const uint8_t *data,
|
|
|
struct vhost_vdpa_config *config;
|
|
|
int ret;
|
|
|
unsigned long config_size = offsetof(struct vhost_vdpa_config, buf);
|
|
|
+
|
|
|
config = g_malloc(size + config_size);
|
|
|
- if (config == NULL) {
|
|
|
- return -1;
|
|
|
- }
|
|
|
config->off = offset;
|
|
|
config->len = size;
|
|
|
memcpy(config->buf, data, size);
|
|
@@ -340,9 +335,6 @@ static int vhost_vdpa_get_config(struct vhost_dev *dev, uint8_t *config,
|
|
|
int ret;
|
|
|
|
|
|
v_config = g_malloc(config_len + config_size);
|
|
|
- if (v_config == NULL) {
|
|
|
- return -1;
|
|
|
- }
|
|
|
v_config->len = config_len;
|
|
|
v_config->off = 0;
|
|
|
ret = vhost_vdpa_call(dev, VHOST_VDPA_GET_CONFIG, v_config);
|
|
@@ -469,6 +461,6 @@ const VhostOps vdpa_ops = {
|
|
|
.vhost_send_device_iotlb_msg = NULL,
|
|
|
.vhost_dev_start = vhost_vdpa_dev_start,
|
|
|
.vhost_get_device_id = vhost_vdpa_get_device_id,
|
|
|
- .vhost_vq_get_addr = vhost_vdpa_vq_get_addr,
|
|
|
- .vhost_force_iommu = vhost_vdpa_force_iommu,
|
|
|
+ .vhost_vq_get_addr = vhost_vdpa_vq_get_addr,
|
|
|
+ .vhost_force_iommu = vhost_vdpa_force_iommu,
|
|
|
};
|