From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NcgQ6-0001LP-7T for qemu-devel@nongnu.org; Wed, 03 Feb 2010 09:41:30 -0500 Received: from [199.232.76.173] (port=38065 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NcgQ5-0001LD-UK for qemu-devel@nongnu.org; Wed, 03 Feb 2010 09:41:29 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1NcgQ4-0003nW-LA for qemu-devel@nongnu.org; Wed, 03 Feb 2010 09:41:29 -0500 Received: from mx1.redhat.com ([209.132.183.28]:1025) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NcgQ4-0003nM-7N for qemu-devel@nongnu.org; Wed, 03 Feb 2010 09:41:28 -0500 Received: from int-mx05.intmail.prod.int.phx2.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.18]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id o13EfRBt016994 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Wed, 3 Feb 2010 09:41:27 -0500 From: Luiz Capitulino Date: Wed, 3 Feb 2010 12:41:04 -0200 Message-Id: <1265208064-16039-6-git-send-email-lcapitulino@redhat.com> In-Reply-To: <1265208064-16039-1-git-send-email-lcapitulino@redhat.com> References: <1265208064-16039-1-git-send-email-lcapitulino@redhat.com> Subject: [Qemu-devel] [PATCH 5/5] virtio-blk: Generate BLOCK_IO_ERROR QMP event List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com Just call bdrv_mon_event() in the right place. Signed-off-by: Luiz Capitulino --- hw/virtio-blk.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/hw/virtio-blk.c b/hw/virtio-blk.c index 037a79c..75adbec 100644 --- a/hw/virtio-blk.c +++ b/hw/virtio-blk.c @@ -105,16 +105,20 @@ static int virtio_blk_handle_rw_error(VirtIOBlockReq *req, int error, drive_get_on_error(req->dev->bs, is_read); VirtIOBlock *s = req->dev; - if (action == BLOCK_ERR_IGNORE) + if (action == BLOCK_ERR_IGNORE) { + bdrv_mon_event(req->dev->bs, BDRV_ACTION_IGNORE, is_read); return 0; + } if ((error == ENOSPC && action == BLOCK_ERR_STOP_ENOSPC) || action == BLOCK_ERR_STOP_ANY) { req->next = s->rq; s->rq = req; vm_stop(0); + bdrv_mon_event(req->dev->bs, BDRV_ACTION_STOP, is_read); } else { virtio_blk_req_complete(req, VIRTIO_BLK_S_IOERR); + bdrv_mon_event(req->dev->bs, BDRV_ACTION_REPORT, is_read); } return 1; -- 1.6.6