From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48951) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WDGkk-0005xa-7f for qemu-devel@nongnu.org; Tue, 11 Feb 2014 12:04:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WDGkb-0008AN-KC for qemu-devel@nongnu.org; Tue, 11 Feb 2014 12:04:10 -0500 Received: from mail-qa0-x230.google.com ([2607:f8b0:400d:c00::230]:65208) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WDGkb-0008AH-Ff for qemu-devel@nongnu.org; Tue, 11 Feb 2014 12:04:01 -0500 Received: by mail-qa0-f48.google.com with SMTP id f11so12160533qae.35 for ; Tue, 11 Feb 2014 09:04:01 -0800 (PST) Sender: Paolo Bonzini From: Paolo Bonzini Date: Tue, 11 Feb 2014 18:03:33 +0100 Message-Id: <1392138233-26407-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH v2 00/20] Improve bdrv_open error messages List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: kwolf@redhat.com, famz@redhat.com 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