From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:50940) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1T9Hj2-0008UN-3Q for qemu-devel@nongnu.org; Wed, 05 Sep 2012 11:41:09 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1T9Hix-0005gl-Sd for qemu-devel@nongnu.org; Wed, 05 Sep 2012 11:41:08 -0400 Sender: Paolo Bonzini Message-ID: <50477289.5070703@redhat.com> Date: Wed, 05 Sep 2012 17:40:57 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <1346851493-9149-1-git-send-email-riegamaths@gmail.com> In-Reply-To: <1346851493-9149-1-git-send-email-riegamaths@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH v3] block: output more error messages if failed to create temporary snapshot List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: riegamaths@gmail.com Cc: qemu-trivial , qemu-devel Il 05/09/2012 15:24, riegamaths@gmail.com ha scritto: > From: Dunrong Huang > > If we failed to create temporary snapshot, the error message did not match > with the error, for example: > > $ TMPDIR=/tmp/bad_path qemu-system-x86_64 -enable-kvm debian.qcow2 -snapshot > qemu-system-x86_64: -enable-kvm: could not open disk image /home/mathslinux/Images/debian.qcow2: No such file or directory > > Indeed, the file which cant be created is /tmp/bad_path/vl.xxxxxx, not > debian.qcow2. so the error message makes users feel confused. > > Signed-off-by: Dunrong Huang > --- > v1 -> v2: > Output error message only if fd < 0 > v2 -> v3: > Output error message in the caller of get_tmp_filename() > block.c | 2 ++ > 1 个文件被修改,插入 2 行(+) > > diff --git a/block.c b/block.c > index 470bdcc..074987e 100644 > --- a/block.c > +++ b/block.c > @@ -764,6 +764,8 @@ int bdrv_open(BlockDriverState *bs, const char *filename, int flags, > > ret = get_tmp_filename(tmp_filename, sizeof(tmp_filename)); > if (ret < 0) { > + fprintf(stderr, "Could not create temporary snapshot %s: %s\n", > + tmp_filename, strerror(errno)); > return ret; > } > > Looks good. Paolo