v2 of:
https://www.redhat.com/archives/libvir-list/2020-July/msg00145.html
diff to v1:
- Switch virfdstream to glib (patches 1-6)
- Document the feature in NEWS.rst
- Introduced test cases for virStringIsNull()
- Included what was WIP patch in v1 => patch 16 which ensures block
devices aren't read twice
Michal Prívozník (17):
virfdstream: Use g_autofree in virFDStreamThreadDoRead()
virFDStreamMsgQueuePush: Clear pointer to passed message
virfdstream: Use autoptr for virFDStreamMsg
virfdstream: Use g_new0() instead of VIR_ALLOC()
virfdstream: Use VIR_AUTOCLOSE()
virfdstream: Drop some needless labels
libvirt-storage: Document volume upload/download stream format
virstring: Introduce virStringIsNull()
virfile: Introduce virFileInDataDetectZeroes()
virsh: Pass virshStreamCallbackDataPtr to virshStreamSink() and
virshStreamSkip()
virsh: Track if vol-upload or vol-download work over a block device
virshStreamSkip: Emulate skip for block devices
virfdstream: Allow sparse stream vol-download
virshStreamInData: Handle block devices
virfdstream: Emulate skip for block devices
stream: Don't read block device twice
news: Document sparse streams for block devcies
NEWS.rst | 7 ++
src/libvirt-storage.c | 8 +-
src/libvirt_private.syms | 2 +
src/util/virfdstream.c | 179 ++++++++++++++++++++++-----------------
src/util/virfile.c | 50 +++++++++++
src/util/virfile.h | 5 ++
src/util/virstring.c | 38 +++++++++
src/util/virstring.h | 2 +
tests/virstringtest.c | 47 ++++++++++
tools/virsh-util.c | 90 +++++++++++++++++---
tools/virsh-util.h | 4 +
tools/virsh-volume.c | 23 ++++-
12 files changed, 360 insertions(+), 95 deletions(-)
--
2.26.2