All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v1 0/8]: QMP: Thin provisioning support
@ 2011-07-05 18:17 Luiz Capitulino
  2011-07-05 18:17 ` [Qemu-devel] [PATCH 1/8] Introduce the VMStatus type Luiz Capitulino
                   ` (8 more replies)
  0 siblings, 9 replies; 29+ messages in thread
From: Luiz Capitulino @ 2011-07-05 18:17 UTC (permalink / raw)
  To: qemu-devel; +Cc: kwolf, jan.kiszka, armbru, stefanha, jdenemar

Roughly speaking, thin provisioning is a feature where the VM is started with
a small storage and when a no space error is triggered, more space is allocated
and the VM is put to run again.

This series allows a management tool using QMP to implement thin provisioning
support. It does the following:

1. patches 1/8 and 2/8 extend the query-status command to contain a more
   complete and descriptive status

2. patches 3/8 to 6/8 add support to the block layer to track the status of
   the last executed I/O operation. This is supported by ide, virtio and scsi
   devices

3. The last two patches extend the "query-block" and "info block" commands
   to print the last I/O status field (this is per device)

Basically, all a management tool has to do to implement thin provisioning is
to wait for a BLOCK_IO_ERROR event (or the STOP event), check the VM is
stopped by issuing query-status and then find which device failed by using
query-block. Of course that the VM has to be configured to stop on errors.

A last important detail: Anthony has proposed how the query-status command
should be extended to support this[1]. However, I had to make the following
changes to his original proposal:

- Added states: debug, inmigrate, load-state-error and internal-error
- Dropped: singlestep

You'll find more details in the patches, thanks!

 [1] http://lists.nongnu.org/archive/html/qemu-devel/2011-06/msg00352.html

 block.c         |   37 ++++++++++++++++++++++++++++++++++++-
 block.h         |    7 +++++++
 block_int.h     |    2 ++
 gdbstub.c       |    4 ++++
 hw/ide/core.c   |    6 ++++++
 hw/scsi-disk.c  |    7 +++++++
 hw/virtio-blk.c |    4 ++++
 hw/watchdog.c   |    1 +
 kvm-all.c       |    1 +
 migration.c     |    3 +++
 monitor.c       |    8 +++++---
 qmp-commands.hx |   23 ++++++++++++++++++++++-
 sysemu.h        |   19 +++++++++++++++++++
 vl.c            |   37 +++++++++++++++++++++++++++++++++++++
 14 files changed, 154 insertions(+), 5 deletions(-)

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2011-07-12 17:59 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-05 18:17 [Qemu-devel] [PATCH v1 0/8]: QMP: Thin provisioning support Luiz Capitulino
2011-07-05 18:17 ` [Qemu-devel] [PATCH 1/8] Introduce the VMStatus type Luiz Capitulino
2011-07-05 18:33   ` Anthony Liguori
2011-07-05 18:51     ` Luiz Capitulino
2011-07-05 18:58       ` Anthony Liguori
2011-07-05 19:34         ` Luiz Capitulino
2011-07-12  7:28   ` Markus Armbruster
2011-07-12 14:25     ` Luiz Capitulino
2011-07-12 14:51       ` Kevin Wolf
2011-07-12 15:12         ` Luiz Capitulino
2011-07-12 16:03           ` Luiz Capitulino
2011-07-12 16:16             ` Kevin Wolf
2011-07-12 17:59               ` Luiz Capitulino
2011-07-05 18:17 ` [Qemu-devel] [PATCH 2/8] QMP: query-status: Introduce 'status' key Luiz Capitulino
2011-07-05 18:17 ` [Qemu-devel] [PATCH 3/8] block: Support to keep track of I/O status Luiz Capitulino
2011-07-12  7:45   ` Markus Armbruster
2011-07-12  8:33     ` Kevin Wolf
2011-07-12  9:12       ` Markus Armbruster
2011-07-12 14:38         ` Luiz Capitulino
2011-07-12 14:25   ` Kevin Wolf
2011-07-12 14:56     ` Luiz Capitulino
2011-07-05 18:17 ` [Qemu-devel] [PATCH 4/8] ide: Support " Luiz Capitulino
2011-07-05 18:17 ` [Qemu-devel] [PATCH 5/8] virtio: " Luiz Capitulino
2011-07-05 18:17 ` [Qemu-devel] [PATCH 6/8] scsi: " Luiz Capitulino
2011-07-05 18:17 ` [Qemu-devel] [PATCH 7/8] QMP: query-status: Add 'io-status' key Luiz Capitulino
2011-07-12  7:47   ` Markus Armbruster
2011-07-12 14:56     ` Luiz Capitulino
2011-07-05 18:17 ` [Qemu-devel] [PATCH 8/8] HMP: Print 'io-status' information Luiz Capitulino
2011-07-11 17:43 ` [Qemu-devel] [PATCH v1 0/8]: QMP: Thin provisioning support Luiz Capitulino

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.