Anthony ran into conflicts and asked me to rebase and send out a pull request.
Complete list of conflicts: * qdev: Improve diagnostics for bad property values commit 6bf38816df80a3b50529119c5458b151b3e2c728 Adds two new errors to qdev_prop_parse(), which need conversion to QError. Resolution straighforward, just needs new QERR_PROPERTY_VALUE_IN_USE, QERR_PROPERTY_VALUE_NOT_FOUND. * scsi: Make device scsi-disk reject /dev/sg* commit 32bb404a6a4d726dfd691f75704f08257ce65ffe Adds a qemu_error() use, which needs to be changed to error_report(). * slirp: check system() success commit 24ac07dec7f23c58dc48aa7754f872781b386d46 Context changed. Resolution trivial. The following changes since commit 0aef4261ac0ec9089ade0e3a92f986cb4ba7317e: Aurelien Jarno (1): target-ppc: fix evsrwu and evsrws (second try) are available in the git repository at: git://repo.or.cz/qemu/armbru.git qerror Markus Armbruster (52): usb: Remove disabled monitor_printf() in usb_read_file() savevm: Fix -loadvm to report errors to stderr, not the monitor pc: Fix error reporting for -boot once pc: Factor common code out of pc_boot_set() and cmos_init() tools: Remove unused cur_mon from qemu-tool.c monitor: Separate "default monitor" and "current monitor" cleanly block: Simplify usb_msd_initfn() test for "can read bdrv key" monitor: Factor monitor_set_error() out of qemu_error_internal() error: Move qemu_error() & friends from monitor.c to own file error: Simplify error sink setup error: Move qemu_error & friends into their own header error: New error_printf() and error_vprintf() error: Don't abuse qemu_error() for non-error in qdev_device_help() error: Don't abuse qemu_error() for non-error in qbus_find() error: Don't abuse qemu_error() for non-error in scsi_hot_add() error: Replace qemu_error() by error_report() error: Rename qemu_error_new() to qerror_report() error: Infrastructure to track locations for error reporting error: Include the program name in error messages to stderr error: Track locations in configuration files QemuOpts: Fix qemu_config_parse() to catch file read errors error: Track locations on command line qdev: Fix -device and device_add to handle unsuitable bus gracefully qdev: Factor qdev_create_from_info() out of qdev_create() qdev: Hide "no_user" devices from users qdev: Hide "ptr" properties from users monitor: New monitor_cur_is_qmp() error: Let converted handlers print in human monitor error: Polish human-readable error descriptions error: New QERR_PROPERTY_NOT_FOUND error: New QERR_PROPERTY_VALUE_BAD error: New QERR_PROPERTY_VALUE_IN_USE error: New QERR_PROPERTY_VALUE_NOT_FOUND qdev: convert setting device properties to QError qdev: Relax parsing of bus option error: New QERR_BUS_NOT_FOUND error: New QERR_DEVICE_MULTIPLE_BUSSES error: New QERR_DEVICE_NO_BUS qdev: Convert qbus_find() to QError error: New error_printf_unless_qmp() error: New QERR_BAD_BUS_FOR_DEVICE error: New QERR_BUS_NO_HOTPLUG error: New QERR_DEVICE_INIT_FAILED error: New QERR_NO_BUS_FOR_DEVICE Revert "qdev: Use QError for 'device not found' error" error: Convert do_device_add() to QError qemu-option: Functions to convert to/from QDict qemu-option: Move the implied first name into QemuOptsList qemu-option: Rename find_list() to qemu_find_opts() & external linkage monitor: New argument type 'O' monitor: Use argument type 'O' for device_add monitor: convert do_device_add() to QObject Makefile.target | 1 + audio/audio.c | 4 +- hw/pc.c | 35 ++---- hw/pci-hotplug.c | 14 +- hw/pci.c | 14 +- hw/qdev-properties.c | 36 ++--- hw/qdev.c | 236 ++++++++++++++++++++-------------- hw/qdev.h | 2 +- hw/scsi-bus.c | 4 +- hw/scsi-disk.c | 7 +- hw/scsi-generic.c | 9 +- hw/usb-bus.c | 4 +- hw/usb-msd.c | 4 +- hw/usb-net.c | 2 +- hw/usb-serial.c | 9 +- hw/virtio-net.c | 5 +- hw/virtio-pci.c | 4 +- hw/virtio-serial-bus.c | 2 +- monitor.c | 337 +++++++++++++++++++++--------------------------- monitor.h | 7 + net.c | 32 +++--- net/dump.c | 5 +- net/slirp.c | 28 ++-- net/socket.c | 12 +- net/tap-bsd.c | 7 +- net/tap-linux.c | 9 +- net/tap-solaris.c | 4 +- net/tap-win32.c | 2 +- net/tap.c | 3 +- qemu-config.c | 56 +++++--- qemu-config.h | 3 +- qemu-error.c | 227 ++++++++++++++++++++++++++++++++ qemu-error.h | 47 +++++++ qemu-monitor.hx | 7 +- qemu-option.c | 93 +++++++++++++- qemu-option.h | 6 +- qemu-tool.c | 30 ++++- qerror.c | 83 +++++++++--- qerror.h | 51 ++++++- savevm.c | 27 ++-- slirp/misc.c | 2 +- sysemu.h | 13 +-- usb-linux.c | 8 - vl.c | 44 ++++--- vnc.c | 5 +- 45 files changed, 1007 insertions(+), 533 deletions(-) create mode 100644 qemu-error.c create mode 100644 qemu-error.h