Re: [Qemu-devel] [PULL] xen patches

2012-04-25 Thread Christoph Hellwig
On Tue, Apr 24, 2012 at 12:28:35PM +0100, Stefano Stabellini wrote:
   xen_disk: use bdrv_aio_flush instead of bdrv_flush

This one seems completely broken, as it just queues up the flushes and
writes without any ordering between them.  Linux filesystems absolutely
rely on a REQ_FUA request which gets mapped to BLKIF_OP_FLUSH_DISKCACHE
to flush the data it actually sent.

I'm not sure who actually expects the preflush, but the only point
in ever doing it would be to sequence it properly vs the write.



Re: [Qemu-devel] [PULL] xen patches

2012-04-25 Thread Stefano Stabellini
Anthony,
please ignore this pull request, I'll rework and resubmit later.


On Wed, 25 Apr 2012, Christoph Hellwig wrote:
 On Tue, Apr 24, 2012 at 12:28:35PM +0100, Stefano Stabellini wrote:
xen_disk: use bdrv_aio_flush instead of bdrv_flush
 
 This one seems completely broken, as it just queues up the flushes and
 writes without any ordering between them.  Linux filesystems absolutely
 rely on a REQ_FUA request which gets mapped to BLKIF_OP_FLUSH_DISKCACHE
 to flush the data it actually sent.
 
 I'm not sure who actually expects the preflush, but the only point
 in ever doing it would be to sequence it properly vs the write.

I see.. I need to make sure that the bdrv_aio_flush is fully completed
before issuing any reads or writes, not just ordered correctly: calling
bdrv_aio_flush before bdrv_aio_readv/writev is not enough.



[Qemu-devel] [PULL] xen patches

2012-04-24 Thread Stefano Stabellini
Hi Anthony,
please pull:

git://xenbits.xen.org/people/sstabellini/qemu-dm.git for_anthony

it contains a couple of xen_disk improvements and Xen HVM reboot
support.

John V. Baboval (1):
  xen: Support guest reboots

Stefano Stabellini (2):
  xen_disk: use bdrv_aio_flush instead of bdrv_flush
  xen_disk: implement BLKIF_OP_FLUSH_DISKCACHE, remove 
BLKIF_OP_WRITE_BARRIER

 hw/xen_common.h |2 +-
 hw/xen_disk.c   |   21 ++---
 xen-all.c   |   18 +++---
 3 files changed, 22 insertions(+), 19 deletions(-)

Thanks,

Stefano