[libvirt] [PATCH 0/9] Vol Zeroing API

David Allan dallan at redhat.com
Tue Mar 2 22:13:25 UTC 2010


This patch set contains a new API for zeroing out volumes.  I called
it zero out rather than overwrite because it doesn't overwrite
anything in the case of sparse files.  It does guarantee that any
subsequent reads from the volume will return zeroes.

The ESX driver change is part of the patch.  Without it, the struct is
missing its initializer and fails to build.  I'm not sure what our
position on the style of struct initializers is; there are both forms
in the code.  If this style is heresy, we should add a statement to
that effect in HACKING.

Dave


David Allan (9):
  Fix ESX storage driver struct initializer
  Add public API for volume zeroing
  Define the internal driver API for vol zeroing
  Implement the public API for vol zeroing
  Define wire protocol format for vol zeroing
  Implement RPC client for vol zeroing
  Implement the remote dispatch bits of vol zeroing
  Simplified version of volume zeroing based on feedback from the list.
  Virsh support for vol zeroing

 daemon/remote.c                     |   32 +++++
 daemon/remote_dispatch_args.h       |    1 +
 daemon/remote_dispatch_prototypes.h |    8 ++
 daemon/remote_dispatch_table.h      |    5 +
 include/libvirt/libvirt.h.in        |    2 +
 src/driver.h                        |    5 +
 src/esx/esx_storage_driver.c        |   39 +------
 src/libvirt.c                       |   47 ++++++++
 src/libvirt_public.syms             |    1 +
 src/remote/remote_driver.c          |   27 +++++
 src/remote/remote_protocol.c        |   11 ++
 src/remote/remote_protocol.h        |    9 ++
 src/remote/remote_protocol.x        |    8 +-
 src/storage/storage_driver.c        |  218 +++++++++++++++++++++++++++++++++++
 tools/virsh.c                       |   42 +++++++
 15 files changed, 418 insertions(+), 37 deletions(-)




More information about the libvir-list mailing list