virtio-balloon: unref the memory region before continuing
authorTiwei Bie <tiwei.bie@intel.com>
Thu, 25 Jan 2018 07:12:43 +0000 (15:12 +0800)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 13 Feb 2018 16:25:48 +0000 (18:25 +0200)
Signed-off-by: Tiwei Bie <tiwei.bie@intel.com>
Cc: qemu-stable@nongnu.org
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/virtio/virtio-balloon.c

index 14e08d20d0ac408c554c9ca210ab8633d3c29f30..f2104bfcef22e65823305150ea3dd2fdbdad2f45 100644 (file)
@@ -234,6 +234,7 @@ static void virtio_balloon_handle_output(VirtIODevice *vdev, VirtQueue *vq)
                 memory_region_is_rom(section.mr) ||
                 memory_region_is_romd(section.mr)) {
                 trace_virtio_balloon_bad_addr(pa);
+                memory_region_unref(section.mr);
                 continue;
             }