From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:50438) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SzsN7-0006El-4I for qemu-devel@nongnu.org; Fri, 10 Aug 2012 12:47:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SzsN5-00082s-Ny for qemu-devel@nongnu.org; Fri, 10 Aug 2012 12:47:37 -0400 Received: from mx1.redhat.com ([209.132.183.28]:40358) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SzsN5-00082g-Fq for qemu-devel@nongnu.org; Fri, 10 Aug 2012 12:47:35 -0400 From: Kevin Wolf Date: Fri, 10 Aug 2012 18:47:19 +0200 Message-Id: <1344617249-6620-2-git-send-email-kwolf@redhat.com> In-Reply-To: <1344617249-6620-1-git-send-email-kwolf@redhat.com> References: <1344617249-6620-1-git-send-email-kwolf@redhat.com> Subject: [Qemu-devel] [PATCH 01/11] virtio-blk: fix use-after-free while handling scsi commands List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: anthony@codemonkey.ws Cc: kwolf@redhat.com, qemu-devel@nongnu.org From: Avi Kivity The scsi passthrough handler falls through after completing a request into the failure path, resulting in a use after free. Reproducible by running a guest with aio=native on a block device. Reported-by: Stefan Priebe Signed-off-by: Avi Kivity Signed-off-by: Stefan Hajnoczi Signed-off-by: Kevin Wolf --- hw/virtio-blk.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/hw/virtio-blk.c b/hw/virtio-blk.c index f21757e..552b3b6 100644 --- a/hw/virtio-blk.c +++ b/hw/virtio-blk.c @@ -254,6 +254,7 @@ static void virtio_blk_handle_scsi(VirtIOBlockReq *req) virtio_blk_req_complete(req, status); g_free(req); + return; #else abort(); #endif -- 1.7.6.5