Kevin / Max, Could you confirm whether you're ok with me sending a pull request for this, or prefer to funnel it through the block tree for sanity checking.
It changes error messages from the block file driver on non-win32 platforms. I've tested qemu-iotests with -raw and -qcow2 and didn't see failures On Thu, Sep 03, 2020 at 04:22:02PM +0100, Daniel P. Berrangé wrote: > v1: https://lists.gnu.org/archive/html/qemu-devel/2020-07/msg00269.html > v2: https://lists.gnu.org/archive/html/qemu-devel/2020-07/msg00589.html > v3: https://lists.gnu.org/archive/html/qemu-devel/2020-07/msg07098.html > v4: https://lists.gnu.org/archive/html/qemu-devel/2020-08/msg05334.html > v5: https://lists.gnu.org/archive/html/qemu-devel/2020-09/msg00947.html > > See patch commit messages for rationale > > Ideally we would convert other callers of qemu_open_old to use > qemu_open, and eventually remove qemu_open_old entirely, so every > caller gets use of Error **errp. > > Improved in v6: > > - Fix errno regression dup'ing FD > - Move qapi header to correct patch > - Fix whitespace and commit messages > - Converted more use of qemu_open to qemu_open_old after rebase > > Improved in v5: > > - Drop reporting of flags in failed open call > - Split O_CLOEXEC handling off into separate helper > - Refactor monitor FD set APIs to simplify their use > > Improved in v4: > > - Use assert() for programmer mistakes > - Split second patch into three distinct parts > - Misc typos > - Improve commit message > > Improved in v3: > > - Re-arrange the patches series, so that the conversion to Error > takes place first, then the improve O_DIRECT reporting > - Rename existing method to qemu_open_old > - Use a pair of new methods qemu_open + qemu_create to improve > arg checking > > Improved in v2: > > - Mention that qemu_open_err is preferred over qemu_open > - Get rid of obsolete error_report call > - Simplify O_DIRECT handling > - Fixup iotests for changed error message text > > Daniel P. Berrangé (8): > monitor: simplify functions for getting a dup'd fdset entry > util: split off a helper for dealing with O_CLOEXEC flag > util: rename qemu_open() to qemu_open_old() > util: refactor qemu_open_old to split off variadic args handling > util: add Error object for qemu_open_internal error reporting > util: introduce qemu_open and qemu_create with error reporting > util: give a specific error message when O_DIRECT doesn't work > block/file: switch to use qemu_open/qemu_create for improved errors > > accel/kvm/kvm-all.c | 2 +- > backends/rng-random.c | 2 +- > backends/tpm/tpm_passthrough.c | 8 +-- > block/file-posix.c | 16 ++--- > block/file-win32.c | 5 +- > block/vvfat.c | 5 +- > chardev/char-fd.c | 2 +- > chardev/char-pipe.c | 6 +- > chardev/char.c | 2 +- > dump/dump.c | 2 +- > hw/s390x/s390-skeys.c | 2 +- > hw/usb/host-libusb.c | 2 +- > hw/usb/u2f-passthru.c | 4 +- > hw/vfio/common.c | 4 +- > include/monitor/monitor.h | 3 +- > include/qemu/osdep.h | 9 ++- > io/channel-file.c | 2 +- > monitor/misc.c | 58 ++++++++---------- > net/vhost-vdpa.c | 2 +- > os-posix.c | 2 +- > qga/channel-posix.c | 4 +- > qga/commands-posix.c | 6 +- > stubs/fdset.c | 8 +-- > target/arm/kvm.c | 2 +- > ui/console.c | 2 +- > util/osdep.c | 104 +++++++++++++++++++++++---------- > util/oslib-posix.c | 2 +- > 27 files changed, 150 insertions(+), 116 deletions(-) > > -- > 2.26.2 > Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
