Il 23/05/2012 14:06, Stefan Hajnoczi ha scritto: >> > diff --git a/block.c b/block.c >> > index 3db7150..b3d0054 100644 >> > --- a/block.c >> > +++ b/block.c >> > @@ -661,7 +661,7 @@ static int bdrv_open_common(BlockDriverState *bs, >> > const char *filename, >> > if (drv->bdrv_file_open) { >> > ret = drv->bdrv_file_open(bs, filename, open_flags); >> > } else { >> > - ret = bdrv_file_open(&bs->file, filename, open_flags); >> > + ret = bdrv_file_open(&bs->file, filename, open_flags & >> > ~BDRV_O_CACHE_WB); > Do you really want to open image files with O_DSYNC? For example, > when I try these patches with -drive > if=virtio,file=test.img,cache=none I find that the image file file > descriptor has O_DSYNC set! That would make cache=none equivalent to > cache=directsync.
See the revised version I posted yesterday, this patch is bonkers. :) What I wanted is "| BDRV_O_CACHE_WB". Paolo