23.05.2014 07:44, Jules Wang wrote: > Calling dma_bdrv_unmap() twice is not necessary and may cause > potential problems if some code changes. > > Signed-off-by: Jules Wang <junqing.w...@cs2c.com.cn> > --- > dma-helpers.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/dma-helpers.c b/dma-helpers.c > index 5f421e9..53cbe92 100644 > --- a/dma-helpers.c > +++ b/dma-helpers.c > @@ -143,12 +143,12 @@ static void dma_bdrv_cb(void *opaque, int ret) > > dbs->acb = NULL; > dbs->sector_num += dbs->iov.size / 512; > - dma_bdrv_unmap(dbs); > > if (dbs->sg_cur_index == dbs->sg->nsg || ret < 0) { > dma_complete(dbs, ret); > return; > } > + dma_bdrv_unmap(dbs); > > while (dbs->sg_cur_index < dbs->sg->nsg) { > cur_addr = dbs->sg->sg[dbs->sg_cur_index].base + dbs->sg_cur_byte;
Applied to -trivial! Maybe not-so-trivial, as I had to look at dma_complete() (who calls dma_bdrv_unmap() ofcourse) to understand what's going on :) Thank you! /mjt