Il 04/07/2012 18:26, Sasha Levin ha scritto: > On Tue, 2012-07-03 at 15:19 +0200, Paolo Bonzini wrote: >> diff --git a/include/linux/virtio_blk.h b/include/linux/virtio_blk.h >> index e0edb40..18a1027 100644 >> --- a/include/linux/virtio_blk.h >> +++ b/include/linux/virtio_blk.h >> @@ -37,8 +37,9 @@ >> #define VIRTIO_BLK_F_RO 5 /* Disk is read-only */ >> #define VIRTIO_BLK_F_BLK_SIZE 6 /* Block size of disk is available*/ >> #define VIRTIO_BLK_F_SCSI 7 /* Supports scsi command passthru */ >> -#define VIRTIO_BLK_F_FLUSH 9 /* Cache flush command support */ >> +#define VIRTIO_BLK_F_WCE 9 /* Writeback mode enabled after reset */ >> #define VIRTIO_BLK_F_TOPOLOGY 10 /* Topology information is available */ >> +#define VIRTIO_BLK_F_CONFIG_WCE 11 /* Writeback mode available in config */ > > Wouldn't this change break any usermode code that implements virtio-blk? No, the change is really just clarifying the existing spec, and mandating that virtio-blk implementations follow certain assumptions of the Linux driver. In particular, the Linux driver is already assuming that the host exposes VIRTIO_BLK_F_FLUSH if and only if it exposes a volatile write cache. This works because if you have a writeback cache, but provide no way to flush it, the guest driver really cannot do anything about it anyway. Might as well treat it as writethrough, i.e. blk_queue_flush(q, 0). QEMU in fact has already behaved like that, and even called the flag VIRTIO_BLK_F_WCACHE instead of VIRRTIO_BLK_F_FLUSH. Paolo -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html