From: Paolo Bonzini Date: Mon, 14 Nov 2011 16:50:53 +0000 (+0100) Subject: block: dma_bdrv_* does not return NULL X-Git-Tag: v2.7.1~5810^2~9 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=b9b2008bbff49e2714491a95109e1189e54a6491;p=mirror_qemu.git block: dma_bdrv_* does not return NULL Initially attempted with the following semantic patch: @ rule1 @ expression E; statement S; @@ E = ( dma_bdrv_io | dma_bdrv_read | dma_bdrv_write ) (...); ( - if (E == NULL) { ... } | - if (E) { <... S ...> } ) which however did not match anything. Signed-off-by: Paolo Bonzini Signed-off-by: Kevin Wolf --- diff --git a/hw/ide/core.c b/hw/ide/core.c index 7071326daa..de9ed411a2 100644 --- a/hw/ide/core.c +++ b/hw/ide/core.c @@ -549,7 +549,6 @@ void ide_dma_cb(void *opaque, int ret) int n; int64_t sector_num; -handle_rw_error: if (ret < 0) { int op = BM_STATUS_DMA_RETRY; @@ -608,11 +607,6 @@ handle_rw_error: ide_issue_trim, ide_dma_cb, s, true); break; } - - if (!s->bus->dma->aiocb) { - ret = -1; - goto handle_rw_error; - } return; eot: diff --git a/hw/ide/macio.c b/hw/ide/macio.c index 40f60f018e..abbc41b59e 100644 --- a/hw/ide/macio.c +++ b/hw/ide/macio.c @@ -152,10 +152,8 @@ static void pmac_ide_transfer_cb(void *opaque, int ret) ide_issue_trim, pmac_ide_transfer_cb, s, true); break; } - - if (!m->aiocb) - pmac_ide_transfer_cb(io, -1); return; + done: if (s->dma_cmd == IDE_DMA_READ || s->dma_cmd == IDE_DMA_WRITE) { bdrv_acct_done(s->bs, &s->acct);