[libvirt] [PATCH v2 00/38] Implement sparse streams for libvirt

Michal Privoznik posted 38 patches 7 years ago
Failed in applying to current master (apply log)
There is a newer version of this series
daemon/remote.c                      |   2 +-
daemon/stream.c                      | 147 +++++-
daemon/stream.h                      |   3 +-
include/libvirt/libvirt-storage.h    |   9 +
include/libvirt/libvirt-stream.h     | 102 +++-
src/driver-stream.h                  |  23 +
src/esx/esx_stream.c                 |  16 +-
src/libvirt-storage.c                |   4 +-
src/libvirt-stream.c                 | 456 +++++++++++++++++
src/libvirt_internal.h               |   3 +
src/libvirt_private.syms             |   2 +
src/libvirt_public.syms              |   9 +
src/libvirt_remote.syms              |   3 +
src/remote/remote_driver.c           |  89 +++-
src/remote/remote_protocol.x         |   2 +
src/rpc/gendispatch.pl               |  21 +-
src/rpc/virnetclient.c               |   1 +
src/rpc/virnetclientstream.c         | 201 +++++++-
src/rpc/virnetclientstream.h         |  17 +-
src/rpc/virnetprotocol.x             |  16 +-
src/rpc/virnetserverprogram.c        |  33 ++
src/rpc/virnetserverprogram.h        |   7 +
src/storage/storage_driver.c         |   4 +-
src/storage/storage_util.c           |  10 +-
src/util/iohelper.c                  |  72 +--
src/util/virfdstream.c               | 926 ++++++++++++++++++++++++++++-------
src/util/virfdstream.h               |   2 +-
src/util/virfile.c                   |  81 +++
src/util/virfile.h                   |   3 +
src/virnetprotocol-structs           |   4 +
tests/fdstreamtest.c                 |  12 +-
tests/virfiletest.c                  | 203 ++++++++
tools/virsh-util.c                   |  65 +++
tools/virsh-util.h                   |  29 ++
tools/virsh-volume.c                 |  50 +-
tools/virsh.pod                      |   6 +-
tools/wireshark/src/packet-libvirt.c |  48 ++
tools/wireshark/src/packet-libvirt.h |   2 +
38 files changed, 2369 insertions(+), 314 deletions(-)
[libvirt] [PATCH v2 00/38] Implement sparse streams for libvirt
Posted by Michal Privoznik 7 years ago
v2 of:

https://www.redhat.com/archives/libvir-list/2017-April/msg00671.html

All the patches can be found on my github:

  https://github.com/zippy2/libvirt/tree/sparse_iohelper5

diff to v1:
- Do not drop the pipe in 06/38. Use it for signaling to the
  event loop that there's a message in the queue waiting to be
  processed.

- Dropped the error report in virNetClientStreamRecvPacket in
  31/38. It was useless.

Michal Privoznik (38):
  fdstreamtest: Rename tempdir
  fdstreamtest: Print more info on read failure
  fdstream: s/struct virFDStreamData */virFDStreamDataPtr/
  virFDStreamData: Turn into virObjectLockable
  virfdstream: Drop iohelper in favour of a thread
  virfdstream: Use messages instead of pipe
  iohelper: Remove unused mode
  util: Introduce virFileInData
  Introduce virStreamRecvFlags
  Implement virStreamRecvFlags to some drivers
  Introduce virStreamSkip
  Introduce virStreamHoleSize
  Introduce VIR_STREAM_RECV_STOP_AT_HOLE flag
  Introduce virStreamSparseRecvAll
  Introduce virStreamSparseSendAll
  Introduce virStreamInData
  virNetClientStreamNew: Track origin stream
  Track if stream is skippable
  RPC: Introduce virNetStreamSkip
  Introduce VIR_NET_STREAM_SKIP message type
  Teach wireshark plugin about VIR_NET_STREAM_SKIP
  daemon: Introduce virNetServerProgramSendStreamSkip
  virnetclientstream: Introduce virNetClientStreamSendSkip
  daemon: Implement VIR_NET_STREAM_SKIP handling
  virnetclientstream: Introduce virNetClientStreamHandleSkip
  remote_driver: Implement virStreamSkip
  virNetClientStreamRecvPacket: Introduce @flags argument
  Introduce virNetClientStreamHoleSize
  remote: Implement virStreamHoleSize
  virNetClientStream: Wire up VIR_NET_STREAM_SKIP
  remote_driver: Implement VIR_STREAM_RECV_STOP_AT_HOLE
  daemonStreamHandleRead: Wire up seekable stream
  daemon: Don't call virStreamInData so often
  daemon: Don't call virStreamInData so often
  gendispatch: Introduce @sparseflag for our calls
  Introduce virStorageVol{Download,Upload}Flags
  virsh: Implement sparse stream to vol-download
  virsh: Implement sparse stream to vol-upload

 daemon/remote.c                      |   2 +-
 daemon/stream.c                      | 147 +++++-
 daemon/stream.h                      |   3 +-
 include/libvirt/libvirt-storage.h    |   9 +
 include/libvirt/libvirt-stream.h     | 102 +++-
 src/driver-stream.h                  |  23 +
 src/esx/esx_stream.c                 |  16 +-
 src/libvirt-storage.c                |   4 +-
 src/libvirt-stream.c                 | 456 +++++++++++++++++
 src/libvirt_internal.h               |   3 +
 src/libvirt_private.syms             |   2 +
 src/libvirt_public.syms              |   9 +
 src/libvirt_remote.syms              |   3 +
 src/remote/remote_driver.c           |  89 +++-
 src/remote/remote_protocol.x         |   2 +
 src/rpc/gendispatch.pl               |  21 +-
 src/rpc/virnetclient.c               |   1 +
 src/rpc/virnetclientstream.c         | 201 +++++++-
 src/rpc/virnetclientstream.h         |  17 +-
 src/rpc/virnetprotocol.x             |  16 +-
 src/rpc/virnetserverprogram.c        |  33 ++
 src/rpc/virnetserverprogram.h        |   7 +
 src/storage/storage_driver.c         |   4 +-
 src/storage/storage_util.c           |  10 +-
 src/util/iohelper.c                  |  72 +--
 src/util/virfdstream.c               | 926 ++++++++++++++++++++++++++++-------
 src/util/virfdstream.h               |   2 +-
 src/util/virfile.c                   |  81 +++
 src/util/virfile.h                   |   3 +
 src/virnetprotocol-structs           |   4 +
 tests/fdstreamtest.c                 |  12 +-
 tests/virfiletest.c                  | 203 ++++++++
 tools/virsh-util.c                   |  65 +++
 tools/virsh-util.h                   |  29 ++
 tools/virsh-volume.c                 |  50 +-
 tools/virsh.pod                      |   6 +-
 tools/wireshark/src/packet-libvirt.c |  48 ++
 tools/wireshark/src/packet-libvirt.h |   2 +
 38 files changed, 2369 insertions(+), 314 deletions(-)

-- 
2.10.2

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH v2 00/38] Implement sparse streams for libvirt
Posted by Michal Privoznik 6 years, 12 months ago
On 04/20/2017 12:01 PM, Michal Privoznik wrote:
> v2 of:
> 
> https://www.redhat.com/archives/libvir-list/2017-April/msg00671.html
> 
> All the patches can be found on my github:
> 
>   https://github.com/zippy2/libvirt/tree/sparse_iohelper5
> 

ping?

Patches 01-07 are fairly trivial and are more of a bug fixes than
feature implementation.

As for the feature, I realize we are close to entering the freeze and
this is touching a core of libvirt - RPC. Therefore if we are not
confident enough, I am okay to merge the rest of the patches after the
release.

Michal

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list