Our chardev open error messages are an embarrassment. Commit 6e1db57b tried to improve the useless "opening backend FOO failed" message in qemu_chr_open_opts(), but it is flawed: some failure modes went from an unhelpful "failed" to an outright misleading error message (see first patch for details). And even for failure modes where the message isn't misleading, it's still sub-par.
Clue: many backends already report their errors. The "failed" message is merely redundant then. Since I'm touching the error reporting anyway, convert it to error_report(), so that a future a monitor command to add character devices emits its errors to the monitor, not stderr. Outline: [01-04/19] Revert the flawed commit [05-06/19] Prepare for use of error_report() [07-17/19] Make the backends report decent errors on all failure paths [ 18/18] Rip out the useless "failed" message [ 19/19] Bonus fix: legacy chardev syntax error reporting Markus Armbruster (19): Revert "qemu-char: Print strerror message on failure" and deps qemu-char: Use qemu_open() to avoid leaking fds to children qemu-char: Re-apply style fixes from just reverted aad04cd0 qemu-char: qemu_chr_open_fd() can't fail, don't check vl.c: Error locations for options using add_device_config() gdbstub: Error locations for -gdb sockets: Drop sockets_debug debug code sockets: Clean up inet_listen_opts()'s convoluted bind() loop sockets: Chardev open error reporting, sockets part qemu-char: Chardev open error reporting, !_WIN32 part qemu-char: Chardev open error reporting, _WIN32 part qemu-char: Chardev open error reporting, tty part qemu-char: Chardev open error reporting, parport part console: Eliminate text_consoles[] console: Chardev open error reporting, console part spice-qemu-char: Chardev open error reporting, spicevmc part baum: Chardev open error reporting, braille part qemu-char: Chardev open error reporting, generic part qemu-char: Fix legacy chardev syntax error reporting console.c | 28 ++---- console.h | 2 +- hw/baum.c | 16 ++-- hw/baum.h | 2 +- hw/msmouse.c | 5 +- hw/msmouse.h | 2 +- qemu-char.c | 263 ++++++++++++++++++++++++++++++----------------------- qemu-sockets.c | 203 +++++++++++++++-------------------------- spice-qemu-char.c | 21 ++-- ui/qemu-spice.h | 2 +- vl.c | 20 ++--- 11 files changed, 265 insertions(+), 299 deletions(-) -- 1.7.6.5