All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 00/16] block: bdrv_reopen() patches
@ 2012-09-13 15:49 Jeff Cody
  2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 01/16] block: correctly set the keep_read_only flag Jeff Cody
                   ` (15 more replies)
  0 siblings, 16 replies; 41+ messages in thread
From: Jeff Cody @ 2012-09-13 15:49 UTC (permalink / raw)
  To: qemu-devel; +Cc: kwolf, pbonzini, stefanha, eblake, supriyak

These patches are based off Supriya Kannery's original bdrv_reopen()
patches as part of the hostcache series.

This provides support for safe reopen of a single image, or transactional
reopening of multiple images atomically.

Changes from v1 -> v2:

Patch 01/16: None

Patch 02/16: New patch

Patch 03/16: [Kevin] Use QSIMPLEQ_FOREACH_SAFE
             [Kevin] Use BDRV_O_ALLOW_RDWR flag instead of keep_read_only
             [Kevin] Preserve error on failure of bdrv_flush()
             [Kevin] bdrv_reopen_prepare() no longer calls bdrv_reopen_abort()
             [Kevin] Directly embed BDRVReopenState field in
                     BlockReopenQueueEntry, rather than by reference
             [Jeff]  Add BlockReopenQueue field to the BDRVReopenState struct
 
             Feedback not incorporated:
             --------------------------
             [Kevin] Sharing 3 of the BDS flag setting lines with bdrv_open(). 
                     I didn't see a great way of doing this.

Patch 04/16: New patch, aio init code motion 

Patch 05/16: [Kevin] New patch, raw_parse_flags code motion 

Patch 06/16: [Kevin] New patch.  Do not parse BDRV_O_CACHE_WB in
                     raw_posix/raw_win32

Patch 07/16: [Kevin] New patch. Code motion - move aligned_buf allocation
                     to helper function.

Patch 08/16: [Kevin] See patches 4-7
             [Kevin] Init AIO, if appropriate
             [Kevin] Fallback to qemu_open, if fcntl fails
             [Eric]  Remove spurious mode in qemu_open()
             [Corey] Use qemu_close() instead of qemu_open()

             Feedback not incorporated:
             --------------------------
             Moving from fcntl + fcntl_setfl to qemu_dup_flags or equivalent.
             Ideally I think a separate patch series creating a wrapper
             function for fcntl, and then update this code with the new wrapper.
            
Patch 09/16: None
Patch 10/16: None
Patch 11/16: None
Patch 12/16: None

Patch 13/16: New patch, VMDK driver for reopen

Patch 14/16: New patch, raw-win32 driver for reopen.  Note, not necessarily 
             safe.  If anyone knows a better way to do it under win32, without
             potentially having to close the handle first, please let me know.

Patch 15/16: New patch, move bdrv_commit to use bdrv_reopen()

Patch 16/16: [Kevin] Get rid of keep_read_only flag completely



Jeff Cody (16):
  block: correctly set the keep_read_only flag
  block: make bdrv_set_enable_write_cache() modify open_flags
  block: Framework for reopening files safely
  block: move aio initialization into a helper function
  block: move open flag parsing in raw block drivers to helper
    functions
  block: do not parse BDRV_O_CACHE_WB in raw block drivers
  block: move allocating aligned_buf into a helper function in
    raw_posix.c
  block: raw-posix image file reopen
  block: raw image file reopen
  block: qed image file reopen
  block: qcow2 image file reopen
  block: qcow image file reopen
  block: vmdk image file reopen
  block: raw-win32 driver reopen support
  block: convert bdrv_commit() to use bdrv_reopen()
  block: remove keep_read_only flag from BlockDriverState struct

 block.c           | 292 ++++++++++++++++++++++++++++++++++++++++++++----------
 block.h           |  24 +++++
 block/qcow.c      |  23 +++++
 block/qcow2.c     |  22 ++++
 block/qed.c       |  20 ++++
 block/raw-posix.c | 243 +++++++++++++++++++++++++++++++++++++--------
 block/raw-win32.c | 144 +++++++++++++++++++++++----
 block/raw.c       |  22 ++++
 block/vmdk.c      |  47 +++++++++
 block_int.h       |   8 +-
 qemu-common.h     |   1 +
 11 files changed, 732 insertions(+), 114 deletions(-)

-- 
1.7.11.4

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

end of thread, other threads:[~2012-09-14  7:55 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-13 15:49 [Qemu-devel] [PATCH v2 00/16] block: bdrv_reopen() patches Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 01/16] block: correctly set the keep_read_only flag Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 02/16] block: make bdrv_set_enable_write_cache() modify open_flags Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 03/16] block: Framework for reopening files safely Jeff Cody
2012-09-13 16:20   ` Paolo Bonzini
2012-09-13 20:35   ` Paolo Bonzini
2012-09-13 20:51     ` Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 04/16] block: move aio initialization into a helper function Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 05/16] block: move open flag parsing in raw block drivers to helper functions Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 06/16] block: do not parse BDRV_O_CACHE_WB in raw block drivers Jeff Cody
2012-09-13 16:12   ` Paolo Bonzini
2012-09-13 17:17     ` Jeff Cody
2012-09-13 18:56       ` Paolo Bonzini
2012-09-13 19:04         ` Jeff Cody
2012-09-13 19:44           ` Paolo Bonzini
2012-09-13 20:29             ` Paolo Bonzini
2012-09-13 21:45               ` Jeff Cody
2012-09-14  6:51                 ` Paolo Bonzini
2012-09-14  7:54                 ` Kevin Wolf
2012-09-14  7:27     ` Kevin Wolf
2012-09-14  7:50       ` Paolo Bonzini
2012-09-14  7:55         ` Kevin Wolf
2012-09-14  7:55           ` Paolo Bonzini
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 07/16] block: move allocating aligned_buf into a helper function in raw_posix.c Jeff Cody
2012-09-13 17:29   ` Eric Blake
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 08/16] block: raw-posix image file reopen Jeff Cody
2012-09-13 16:02   ` Paolo Bonzini
2012-09-13 16:57     ` Jeff Cody
2012-09-14  7:32       ` Kevin Wolf
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 09/16] block: raw " Jeff Cody
2012-09-13 16:05   ` Paolo Bonzini
2012-09-13 17:02     ` Jeff Cody
2012-09-13 18:53       ` Paolo Bonzini
2012-09-13 19:17         ` Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 10/16] block: qed " Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 11/16] block: qcow2 " Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 12/16] block: qcow " Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 13/16] block: vmdk " Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 14/16] block: raw-win32 driver reopen support Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 15/16] block: convert bdrv_commit() to use bdrv_reopen() Jeff Cody
2012-09-13 15:49 ` [Qemu-devel] [PATCH v2 16/16] block: remove keep_read_only flag from BlockDriverState struct Jeff Cody

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.