From: Eric Blake <eblake@redhat.com>
To: "Daniel P. Berrange" <berrange@redhat.com>, qemu-devel@nongnu.org
Cc: Cornelia Huck <cornelia.huck@de.ibm.com>,
Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH v2] s390: use FILE instead of QEMUFile for creating text file
Date: Fri, 15 Jan 2016 16:29:32 -0700 [thread overview]
Message-ID: <569980DC.5030707@redhat.com> (raw)
In-Reply-To: <1452603559-13685-1-git-send-email-berrange@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 1758 bytes --]
On 01/12/2016 05:59 AM, Daniel P. Berrange wrote:
> The s390 skeys monitor command needs to write out a plain text
> file. Currently it is using the QEMUFile class for this, but
> work is ongoing to refactor QEMUFile and eliminate much code
> related to it. The only feature qemu_fopen() gives over fopen()
> is support for QEMU FD passing, but this can be achieved with
> qemu_open() + fdopen() too. Switching to regular stdio FILE
> APIs avoids the need to sprintf via an intermedia buffer which
s/intermedia/intermediate/
> slightly simplifies the code.
>
> Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
> ---
> hw/s390x/s390-skeys.c | 26 ++++++++++++++------------
> 1 file changed, 14 insertions(+), 12 deletions(-)
>
> @@ -124,8 +120,14 @@ void qmp_dump_skeys(const char *filename, Error **errp)
> return;
> }
>
> - f = qemu_fopen(filename, "wb");
> + fd = qemu_open(filename, O_WRONLY|O_CREAT|O_TRUNC, 0600);
A strict conversion should probably include O_BINARY for mingw (where
"wb" turns on binary mode). But maybe we should just make qemu_open()
itself _always_ provide O_BINARY so that callers don't have to worry
about it - do we really have a reason to open a file on mingw where we
want \r\n munged into \n due to text mode?
> + if (fd < 0) {
> + error_setg_file_open(errp, errno, filename);
> + return;
> + }
> + f = fdopen(fd, "wb");
> if (!f) {
> + close(fd);
> error_setg_file_open(errp, errno, filename);
close() may corrupt errno, resulting in a report of the wrong message.
Swap these two lines.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 604 bytes --]
next prev parent reply other threads:[~2016-01-15 23:29 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-12 12:59 [Qemu-devel] [PATCH v2] s390: use FILE instead of QEMUFile for creating text file Daniel P. Berrange
2016-01-15 23:29 ` Eric Blake [this message]
2016-01-18 9:50 ` Daniel P. Berrange
2016-01-18 10:10 ` Cornelia Huck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=569980DC.5030707@redhat.com \
--to=eblake@redhat.com \
--cc=berrange@redhat.com \
--cc=cornelia.huck@de.ibm.com \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.