qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PATCH 2/2] Add flush=off parameter to -drive


From: Alexander Graf
Subject: [Qemu-devel] Re: [PATCH 2/2] Add flush=off parameter to -drive
Date: Wed, 12 May 2010 17:51:48 +0200


Am 12.05.2010 um 17:36 schrieb Kevin Wolf <address@hidden>:

Am 12.05.2010 17:05, schrieb Alexander Graf:
Kevin Wolf wrote:
Am 10.05.2010 23:51, schrieb Alexander Graf:

Usually the guest can tell the host to flush data to disk. In some cases we
don't want to flush though, but try to keep everything in cache.

So let's add a new parameter to -drive that allows us to set the flushing behavior to "on" or "off", defaulting to enabling the guest to flush.

Signed-off-by: Alexander Graf <address@hidden>


What about another cache=... value instead of adding more options? I'm
quite sure you'll only ever need this with writeback caching. So we
could have cache=none|writethrough|writeback|wb-noflush or something
like that.



Yes, cache=volatile seems reasonable. Or cache=unsafe.

---
block/raw-posix.c |   13 +++++++++++++


This is obviously wrong. If you want to introduce new behaviour to the
block layer, you must do it consistently and not just for one block
driver. So these changes should be made to the generic functions in
block.c instead.


How so? The callback functions are called using bdrv->drv->xxx. If I
modify that pointer, I end up affecting all other virtual disks as well.

By doing the check in bdrv_flush/bdrv_aio_flush before this function
pointer is even called.

Sorry yeah, realized that 2 minutes after writing the mail myself :).

I put together an updated patch, but need to test it properly first.

Alex





reply via email to

[Prev in Thread] Current Thread [Next in Thread]