Most of the block drivers are not using the Error** argument to
bdrv_open, and instead just printing errors to stderr.  This series
improves that, using Error** instead of abusing errno numbers too.

The only hurdle (caught by qemu-iotests, too) is VMDK, where we
currently parse a file first as image, and second as a descriptor.
This makes it hard to pick a good error message, because you do not
know which attempt gave the most reasonable error message.  For
this reason patches 15-17 modify this approach and push up the
detection of vmdk image file magic numbers.

Apart from this, and from a segfault fixed by patch 7, the series
consists of mostly trivial patches.

Paolo

Paolo Bonzini (20):
  nbd: produce a better error if neither host nor port is passed
  nbd: correctly propagate errors
  nbd: inline tcp_socket_incoming_spec into sole caller
  nbd: move socket wrappers to qemu-nbd
  iscsi: fix indentation
  iscsi: correctly propagate errors in iscsi_open
  gluster: default scheme to gluster:// and host to localhost.
  gluster: correctly propagate errors
  cow: correctly propagate errors
  curl: correctly propagate errors
  qcow: correctly propagate errors
  qed: correctly propagate errors
  vhdx: correctly propagate errors
  vvfat: correctly propagate errors
  vmdk: extract vmdk_read_desc
  vmdk: push vmdk_read_desc up to caller
  vmdk: do not try opening a file as both image and descriptor
  vmdk: correctly propagate errors
  block: do not abuse EMEDIUMTYPE
  vdi: say why an image is bad

 block/bochs.c              |   3 +-
 block/cow.c                |  15 ++---
 block/curl.c               |  13 ++---
 block/gluster.c            |  28 ++++-----
 block/iscsi.c              | 141 +++++++++++++++++++++++----------------------
 block/nbd.c                |  43 +++++++-------
 block/parallels.c          |   3 +-
 block/qcow.c               |  19 +++---
 block/qcow2.c              |   2 +-
 block/qed.c                |  19 +++---
 block/vdi.c                |  29 ++++++----
 block/vhdx.c               |  21 +++----
 block/vmdk.c               | 121 ++++++++++++++++++++++++--------------
 block/vpc.c                |   3 +-
 block/vvfat.c              |   9 +--
 include/block/nbd.h        |   6 --
 nbd.c                      |  66 ---------------------
 qemu-nbd.c                 |  52 +++++++++++++++++
 tests/qemu-iotests/059.out |   6 +-
 19 files changed, 302 insertions(+), 297 deletions(-)

-- 
1.8.5.3


Reply via email to