summary refs log tree commit diff stats
path: root/scripts/qapi/doc.py (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-01-24hw/i386/pc.c: fix one typo in function nameWei Yang1-2/+2
Rename pc_get_hotpug_handler to pc_get_hotplug_handler. No functional change. Signed-off-by: Wei Yang <richardw.yang@linux.intel.com> Reviewed-by: Stefano Garzarella <sgarzare@redhat.com> Message-Id: <20190124073626.20534-1-richardw.yang@linux.intel.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2019-01-24virtio-net: Fix a typoPhilippe Mathieu-Daudé1-1/+1
Fixes: 2974e916df8 Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-Id: <20190121181335.3326-1-philmd@redhat.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2019-01-24ppc: e6500 registers SPR 604 twiceJon Diekema1-8/+0
When using the e6500 CPU, QEMU generates a fatal error after complaining about registering SPR 604 twice. Building and testing with commit 9b2e891ec5ccdb4a7d583b77988848282606fdea shows the issue: qemu-system-ppc64 --version QEMU emulator version 3.1.50 (v3.1.0-456-g9b2e891ec5-dirty) Copyright (c) 2003-2018 Fabrice Bellard and the QEMU Project developers qemu-system-ppc64 -M none -cpu e6500 Error: Trying to register SPR 604 (25c) twice ! Signed-off-by: Jon Diekema <jon.diekema@ge.com> Message-Id: <CALvuzg43uSodseEHjNaRcPFBKKPTY2mcppUbYgiLL=QO9RxX_Q@mail.gmail.com> [removed duplicated mail header in the commit message] Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2019-01-24contrib/gitdm: Fix a typoPhilippe Mathieu-Daudé1-1/+1
Typo comes from upstream git://git.lwn.net/gitdm.git. Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Aleksandar Markovic <amarkovic@wavecomp.com> Message-Id: <20190111155555.8270-1-philmd@redhat.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2019-01-24MAINTAINERS: Fix utf-8 manglingPhilippe Mathieu-Daudé1-1/+1
Patch incorrectly applied as 15ffb43cbf4. Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-Id: <20190117161355.18204-1-philmd@redhat.com> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
2019-01-24io: ensure UNIX client doesn't unlink server socketDaniel P. Berrangé2-25/+80
The qio_channel_socket_close method for was mistakenly unlinking the UNIX server socket, even if the channel was a client connection. This was not noticed with chardevs, since they never call close, but with the VNC server, this caused the VNC server socket to be deleted after the first client quit. The qio_channel_socket_close method also needlessly reimplemented the logic that already exists in socket_listen_cleanup(). Just call that method directly, for listen sockets only. This fixes a regression introduced in QEMU 3.0.0 with commit d66f78e1eaa832f73c771d9df1b606fe75d52a50 Author: Pavel Balaev <mail@void.so> Date: Mon May 21 19:17:35 2018 +0300 Delete AF_UNIX socket after close Fixes launchpad #1795100 Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-01-24audio: probe audio drivers by defaultGerd Hoffmann1-7/+7
Add the drivers listed in audio_possible_drivers to audio_drv_list, using the try-* variants. That way the probable drivers are compiled by default if possible. Additioal tweaks: linux: reorder to: pa alsa sdl oss. *bsd: drop pa. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Message-id: 20190124112055.547-7-kraxel@redhat.com
2019-01-24audio: error message tweakGerd Hoffmann1-5/+7
Only print a message about the failed driver initialization in case it was the driver explicitly requested by the user via QEMU_AUDIO_DRV=$drv. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-id: 20190124112055.547-6-kraxel@redhat.com
2019-01-24audio: check for pulseaudio daemon pidfileGerd Hoffmann1-0/+15
Check whenever the pulseaudio daemon pidfile is present before trying to initialize the pulseaudio backend. Just return NULL if that is not the case, so qemu will check the next backend in line. In case the user explicitly configured a non-default pulseaudio server skip the check. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Message-id: 20190124112055.547-5-kraxel@redhat.com
2019-01-24audio: use try-sdl for openbsdGerd Hoffmann1-1/+1
Fixes the openbsd build failure with SDL disabled. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Message-id: 20190124112055.547-4-kraxel@redhat.com
2019-01-24audio: allow optional audio drivers.Gerd Hoffmann1-6/+28
For those audio drivers which can be probed (sdl, alsa, pulse) add a try-$name variants. Unlike the variants without try- prefix they will not error out on probe failure, the driver will be dropped from the list instead. Mainly useful for the audio_drv_list default values. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Message-id: 20190124112055.547-3-kraxel@redhat.com
2019-01-24audio: use pkg-configGerd Hoffmann1-26/+13
Use pkg-config to probe for alsa and pulseaudio. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-id: 20190124112055.547-2-kraxel@redhat.com
2019-01-24audio: fix pc speaker initGerd Hoffmann1-20/+15
Get rid of the pcspk_state global, allow pc speaker be added using "-device isa-pcspk". Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Message-id: 20190124110810.1040-1-kraxel@redhat.com
2019-01-24qemu-coroutine-sleep: drop CoSleepCBVladimir Sementsov-Ogievskiy1-17/+10
Drop CoSleepCB structure. It's actually unused. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Message-id: 20190122143113.20331-1-vsementsov@virtuozzo.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-01-24iotests: add 238 for throttling tgm unregister iothread segfaultStefan Hajnoczi3-0/+54
Hot-unplug a scsi-hd using an iothread. The previous patch fixes a segfault in this scenario. This patch adds a regression test. Suggested-by: Alberto Garcia <berto@igalia.com> Suggested-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Alberto Garcia <berto@igalia.com> Message-id: 20190114133257.30299-3-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-01-24throttle-groups: fix restart coroutine iothread raceStefan Hajnoczi2-0/+14
The following QMP command leads to a crash when iothreads are used: { 'execute': 'device_del', 'arguments': {'id': 'data'} } The backtrace involves the queue restart coroutine where tgm->throttle_state is a NULL pointer because throttle_group_unregister_tgm() has already been called: (gdb) bt full #0 0x00005585a7a3b378 in qemu_mutex_lock_impl (mutex=0xffffffffffffffd0, file=0x5585a7bb3d54 "block/throttle-groups.c", line=412) at util/qemu-thread-posix.c:64 err = <optimized out> __PRETTY_FUNCTION__ = "qemu_mutex_lock_impl" __func__ = "qemu_mutex_lock_impl" #1 0x00005585a79be074 in throttle_group_restart_queue_entry (opaque=0x5585a9de4eb0) at block/throttle-groups.c:412 _f = <optimized out> data = 0x5585a9de4eb0 tgm = 0x5585a9079440 ts = 0x0 tg = 0xffffffffffffff98 is_write = false empty_queue = 255 This coroutine should not execute in the iothread after the throttle group member has been unregistered! The root cause is that the device_del code path schedules the restart coroutine in the iothread while holding the AioContext lock. Therefore the iothread cannot execute the coroutine until after device_del releases the lock - by this time it's too late. This patch adds a reference count to ThrottleGroupMember so we can synchronously wait for restart coroutines to complete. Once they are done it is safe to unregister the ThrottleGroupMember. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Alberto Garcia <berto@igalia.com> Message-id: 20190114133257.30299-2-stefanha@redhat.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2019-01-24input-linux: customizable grab toggle keysRyan El Kochta2-3/+73
This patch adds a new option to the input-linux object: grab-toggle=[key-combo] The key combination can be one of the following: * ctrl-ctrl * alt-alt * meta-meta * scrolllock * ctrl-scrolllock The user can pick any of these key combinations. The VM's grab of the evdev device will be toggled when the key combination is pressed. Any invalid setting will result in an error. No setting will result in the current default of ctrl-ctrl. The right and left ctrl key both work for Ctrl-Scrolllock. If scrolllock is selected as one of the grab-toggle keys, it will be entirely disabled and not passed to the guest at all. This is to prevent enabling it while attempting to leave or enter the VM. On the host, scrolllock can be disabled using xmodmap. First, find the modifier that Scroll_Lock is bound to: $ xmodmap -pm Then, remove Scroll_Lock from it, replacing modX with the modifier: $ xmodmap -e 'remove modX = Scroll_Lock' If Scroll_Lock is not bound to any modifier, it is already disabled. To save the changes, add them to your xinitrc. Ryan El Kochta (1): input-linux: customizable grab toggle keys v5 Signed-off-by: Ryan El Kochta <relkochta@gmail.com> Message-id: 20190123214555.12712-2-relkochta@gmail.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2019-01-24qmp: Add examples to qom list, get, and set commandsWainer dos Santos Moschetta1-0/+36
Added examples for the qom-list, qom-get, and qom-set commands in qapi misc JSON file. Signed-off-by: Wainer dos Santos Moschetta <wainersm@redhat.com> Message-Id: <20181228194442.3506-1-wainersm@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com>
2019-01-24qapi: Eliminate indirection through qmp_event_get_func_emit()Markus Armbruster8-45/+24
The qapi_event_send_FOO() functions emit events like this: QMPEventFuncEmit emit; emit = qmp_event_get_func_emit(); if (!emit) { return; } qmp = qmp_event_build_dict("FOO"); [put event arguments into @qmp...] emit(QAPI_EVENT_FOO, qmp); The value of qmp_event_get_func_emit() depends only on the program: * In qemu-system-FOO, it's always monitor_qapi_event_queue. * In tests/test-qmp-event, it's always event_test_emit. * In all other programs, it's always null. This is exactly the kind of dependence the linker is supposed to resolve; we don't actually need an indirection. Note that things would fall apart if we linked more than one QAPI schema into a single program: each set of qapi_event_send_FOO() uses its own event enumeration, yet they share a single emit function. Which takes the event enumeration as an argument. Which one if there's more than one? More seriously: how does this work even now? qemu-system-FOO wants QAPIEvent, and passes a function taking that to qmp_event_set_func_emit(). test-qmp-event wants test_QAPIEvent, and passes a function taking that to qmp_event_set_func_emit(). It works by type trickery, of course: typedef void (*QMPEventFuncEmit)(unsigned event, QDict *dict); void qmp_event_set_func_emit(QMPEventFuncEmit emit); QMPEventFuncEmit qmp_event_get_func_emit(void); We use unsigned instead of the enumeration type. Relies on both enumerations boiling down to unsigned, which happens to be true for the compilers we use. Clean this up as follows: * Generate qapi_event_send_FOO() that call PREFIX_qapi_event_emit() instead of the value of qmp_event_set_func_emit(). * Generate a prototype for PREFIX_qapi_event_emit() into qapi-events.h. * PREFIX_ is empty for qapi/qapi-schema.json, and test_ for tests/qapi-schema/qapi-schema-test.json. It's qga_ for qga/qapi-schema.json, and doc-good- for tests/qapi-schema/doc-good.json, but those don't define any events. * Rename monitor_qapi_event_queue() to qapi_event_emit() instead of passing it to qmp_event_set_func_emit(). This takes care of qemu-system-FOO. * Rename event_test_emit() to test_qapi_event_emit() instead of passing it to qmp_event_set_func_emit(). This takes care of tests/test-qmp-event. * Add a qapi_event_emit() that does nothing to stubs/monitor.c. This takes care of all other programs that link code emitting QMP events. * Drop qmp_event_set_func_emit(), qmp_event_get_func_emit(). Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20181218182234.28876-3-armbru@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> [Commit message typos fixed]
2019-01-24qapi: Belatedly update docs for commit 9c2f56e9f9dMarkus Armbruster1-2/+2
Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20181218182234.28876-2-armbru@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2019-01-23migration: introduce pages-per-secondXiao Guangrong5-3/+31
It introduces a new statistic, pages-per-second, as bandwidth or mbps is not enough to measure the performance of posting pages out as we have compression, xbzrle, which can significantly reduce the amount of the data size, instead, pages-per-second is the one we want Signed-off-by: Xiao Guangrong <xiaoguangrong@tencent.com> Message-Id: <20190111063732.10484-2-xiaoguangrong@tencent.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> With typo's Eric spotted fixed
2019-01-23vmstate: constify SaveVMHandlersMarc-André Lureau2-3/+3
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20181114133139.27346-1-marcandre.lureau@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2019-01-23tests: add /vmstate/simple/arrayMarc-André Lureau1-0/+50
A very simple test to show VMSTATE_*_ARRAY usage and result. It could be systematically extended to other primitives, but I leave that as an exercise for others :). Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20181114132130.27141-1-marcandre.lureau@redhat.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2019-01-23migration/rdma: unregister fd handlerDr. David Alan Gilbert1-0/+1
Unregister the fd handler before we destroy the channel, otherwise we've got a race where we might land in the fd handler just as we're closing the device. (The race is quite data dependent, you just have to have the right set of devices for it to trigger). Corresponds to RH bz: https://bugzilla.redhat.com/show_bug.cgi?id=1666601 Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <20190122173111.29821-1-dgilbert@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2019-01-23migration: unify error handling for process_incoming_migration_coFei Li1-13/+13
In the current code, if process_incoming_migration_co() fails we do the same error handing: set the error state, close the source file, do the cleanup for multifd, and then exit(EXIT_FAILURE). To make the code clearer, add a "goto fail" to unify the error handling. Cc: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Fei Li <fli@suse.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <20190113140849.38339-6-lifei1214@126.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2019-01-23migration: add more error handling for postcopy_ram_enable_notifyFei Li2-0/+2
Call postcopy_ram_incoming_cleanup() to do the cleanup when postcopy_ram_enable_notify fails. Besides, report the error message when qemu_ram_foreach_migratable_block() fails. Cc: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Fei Li <fli@suse.com> Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <20190113140849.38339-5-lifei1214@126.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2019-01-23migration: multifd_save_cleanup() can't fail, simplifyFei Li3-12/+6
multifd_save_cleanup() takes an Error ** argument and returns an error code even though it can't actually fail. Its callers dutifully check for failure. Remove the useless argument and return value, and simplify the callers. Cc: Dr. David Alan Gilbert <dgilbert@redhat.com> Cc: Markus Armbruster <armbru@redhat.com> Signed-off-by: Fei Li <fli@suse.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Message-Id: <20190113140849.38339-4-lifei1214@126.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2019-01-23migration: fix the multifd code when receiving less channelsFei Li5-12/+29
In our current code, when multifd is used during migration, if there is an error before the destination receives all new channels, the source keeps running, however the destination does not exit but keeps waiting until the source is killed deliberately. Fix this by dumping the specific error and let users decide whether to quit from the destination side when failing to receive packet via some channel. And update the comment for multifd_recv_new_channel(). Cc: Dr. David Alan Gilbert <dgilbert@redhat.com> Cc: Peter Xu <peterx@redhat.com> Cc: Markus Armbruster <armbru@redhat.com> Signed-off-by: Fei Li <fli@suse.com> Reviewed-by: Peter Xu <peterx@redhat.com> Message-Id: <20190113140849.38339-3-lifei1214@126.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2019-01-23Fix segmentation fault when qemu_signal_init failsFei Li1-4/+4
When qemu_signal_init() fails in qemu_init_main_loop(), we return without setting an error. Its callers crash then when they try to report the error with error_report_err(). To avoid such segmentation fault, add a new Error parameter to make the call trace to propagate the err to the final caller. Fixes: 2f78e491d7b46542158ce0b8132ee4e05bc0ade4 Cc: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Fei Li <fli@suse.com> Reviewed-by: Fam Zheng <famz@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20190113140849.38339-2-lifei1214@126.com> Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
2019-01-23tests/Makefile: add check-softfloat ruleAlex Bennée1-2/+15
This adds a rule to run all of our softfloat tests. It is included as a pre-requisite to check-tcg and check-unit as well. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Emilio G. Cota <cota@braap.org>
2019-01-23scripts/archive-source: include softfloat testsAlex Bennée1-1/+1
We need these if we want to run unit/softfloat tests in our docker containers. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
2019-01-23tests/Makefile: add floating point testsAlex Bennée1-0/+120
Wire up test/fp-test into the main testing Makefile. Currently we skip some of the extF80 and f128 related tests. Once we re-factor and fix these tests the plumbing should get simpler. Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22include/fpu/softfloat: Fix compilation with Clang on s390xThomas Huth1-1/+1
Clang v7.0.1 does not like the __int128 variable type for inline assembly on s390x: In file included from fpu/softfloat.c:97: include/fpu/softfloat-macros.h:647:9: error: inline asm error: This value type register class is not natively supported! asm("dlgr %0, %1" : "+r"(n) : "r"(d)); ^ Disable this code part there now when compiling with Clang, so that the generic code gets used instead. Signed-off-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Acked-by: Cornelia Huck <cohuck@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22softfloat: enforce softfloat if the host's FMA is brokenEmilio G. Cota1-0/+33
The added branch to the FMA ops is marked as unlikely and therefore its impact on performance (measured with fp-bench) is within noise range when measured on an Intel(R) Xeon(R) Gold 6142 CPU @ 2.60GHz. Reported-by: Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by: Emilio G. Cota <cota@braap.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22tests/fp/platform.h: include config-host.hEmilio G. Cota1-0/+1
We get HOST_WORDS_BIGENDIAN from config-host.h, but the include is missing. Fix it. This fixes `make check-softfloat' on big endian hosts. Reported-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Emilio G. Cota <cota@braap.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22fp-test: fix signature of slow_clear_flags and qemu_clear_flagsEmilio G. Cota1-2/+2
To match the type in testfloat. Signed-off-by: Emilio G. Cota <cota@braap.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22tests/fp/Makefile: do not use gcc-only -W flagsEmilio G. Cota1-2/+1
The build now completes in both gcc and clang. Signed-off-by: Emilio G. Cota <cota@braap.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22berkeley-testfloat-3: pull changesEmilio G. Cota1-0/+0
- fail: constify fail_programName Signed-off-by: Emilio G. Cota <cota@braap.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22fp-bench: remove wrong exponent raise in fill_randomEmilio G. Cota1-4/+0
At this point random_ops[] only contains normals, so there's no need to do anything to them. In fact, raising the exponent here can make the output !normal, which is precisely what the comment says we want to avoid. Signed-off-by: Emilio G. Cota <cota@braap.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22fp-bench: fix update_random_opsEmilio G. Cota1-3/+8
The second test in the branches is wrong; fix while converting to a switch statement, which is easier to get right. Signed-off-by: Emilio G. Cota <cota@braap.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-01-22target/microblaze: Add props enabling exceptions on failed bus accessesEdgar E. Iglesias2-1/+13
Add MicroBlaze CPU properties to enable exceptions on failed bus accesses. Reviewed-by: Luc Michel <luc.michel@greensocs.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
2019-01-22hw/microblaze: s3adsp1800: Create an unimplemented GPIO areaEdgar E. Iglesias1-0/+4
Create an unimplemented GPIO area instead of leaving it unassigned. Reviewed-by: Luc Michel <luc.michel@greensocs.com> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
2019-01-22target/microblaze: Switch to transaction_failed hookPeter Maydell3-14/+17
Switch the microblaze target from the old unassigned_access hook to the transaction_failed hook. The notable difference is that rather than it being called for all physical memory accesses which fail (including those made by DMA devices or by the gdbstub), it is only called for those made by the CPU via its MMU. For microblaze this makes no difference because none of the target CPU code needs to make loads or stores by physical address. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> [EI: Add space in qemu_log()] Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
2019-01-22ipxe: update to latest git masterGerd Hoffmann9-0/+0
git shortlog ipxe-qemu-20170717-0600d3ae94-0..ipxe-qemu-20190122-de4565cbe7-0 ----------------------------------------------------------------------------- Aaron Young (1): [libc] Fix strcmp()/strncmp() to return proper values Ameer Mahagneh (1): [golan] Set log_max_qp to 1 Bruce Rogers (1): [build] Disable gcc stringop-truncation warnings Christian Hesse (1): [build] Handle R_X86_64_PLT32 from binutils 2.31 Hannes Reinecke (1): [iscsi] Parse IPv6 address in root path Heinrich Schuchardt (2): [efi] Accept (and ignore) R_ARM_V4BX relocations [efi] Add support for R_ARM_REL32 relocations Ignat Korchagin (1): [efi] Fix error handling path in efi_snp_probe Janos Mattyasovszky (1): [intel] Add PCI device ID for X550-T2 Joseph Wong (1): [tg3] Add support for SerDes PHY initialization Ladi Prosek (1): [crypto] Fail fast if cross-certificate source is empty Laurent Gourvénec (1): [acpi] Compute and check checksum for ACPI tables Martin Habets (2): [netdevice] Make netdev_irq_enabled() independent of netdev_irq_supported() [sfc] Add support for X25xx adapters Michael Brown (88): [efi] Enumerate PCI BARs in same order as SnpDxe [build] Conditionalise use of -mabi=lp64 for ARM64 builds [build] Fix use of inline assembly on GCC 4.8 ARM64 builds [build] Fix ARM32 EFI builds with current EDK2 headers [acpi] Fix spurious uninitialised-variable warning on some gcc versions [hyperv] Do not steal ownership from the Gen 2 UEFI firmware [shell] Enable "shell" command even when BANNER_TIMEOUT is zero [romprefix] Avoid unaligned accesses within ROM headers [malloc] Avoid false positive warnings from valgrind [linux] Impose receive quota on tap driver [efi] Raise TPL when calling UNDI entry point [netdevice] Cancel all pending transmissions on any transmit error [monojob] Check for job progress only once per timer tick [job] Allow jobs to report an arbitrary status message [downloader] Allow underlying downloads to provide detailed job progress [monojob] Display job status message, if present [peerdist] Gather and report peer statistics during download [netdevice] Add "hwaddr" setting [resolv] Use pass-through interfaces for name resolution multiplexer [dns] Report current DNS query as job progress status message [efi] Check buffer length for packets retrieved via our SNP protocol [efi] Match behaviour of SnpDxe for truncated received packets [dns] Ensure DNS names are NUL-terminated when used as diagnostic strings [efi] Continue to connect remaining handles after connection errors [build] Exclude selected directories from Secure Boot builds [efi] Inhibit our driver Start() method during disconnection attempts [efi] Allow for building with older versions of elf.h system header [crypto] Fix endianness typo in comment [crypto] Eliminate repetitions in MD5 round constant table [crypto] Add MD4 message digest algorithm [ntlm] Add support for NTLM authentication mechanism [http] Gracefully handle offers of multiple authentication schemes [http] Handle parsing of WWW-Authenticate header within authentication scheme [http] Add support for NTLM authentication [xen] Skip probing of any unsupported device types [http] Include error messages for 4xx and 5xx response codes [http] Report unsuccessful response status lines at DBGVL_LOG [image] Omit URI query string and fragment from download progress messages [legal] Add missing FILE_LICENCE declarations [legal] Add missing FILE_LICENCE declarations [build] Avoid use of "ld --oformat binary" [ena] Add driver for Amazon ENA virtual function NIC [skel] Remove MII interface [ena] Fix spurious uninitialised variable warning on older versions of gcc [xhci] Assume an invalid PSI table if any invalid PSI value is observed [intel] Work around broken reset mechanism in i219 devices [http] Allow for domain names within NTLM user names [xhci] Consume event TRB before reporting completion to USB core [efi] Run at TPL_CALLBACK to protect against UEFI timers [efi] Raise TPL within EFI_SIMPLE_NETWORK_PROTOCOL entry points [efi] Raise TPL within EFI_USB_IO_PROTOCOL entry points [process] Include process name in debug messages [efi] Drop to TPL_APPLICATION when gathering entropy [efi] Raise TPL within EFI_DRIVER_BINDING_PROTOCOL entry points [librm] Add facility to provide register and stack dump for CPU exceptions [golan] Do not assume all devices are identical [lacp] Mark link as blocked if partner is not yet up and running [lacp] Fix debug message to match documentation [tftp] Prevent potential division by zero [profile] Prevent potential division by zero [ocsp] Centralise test for whether or not an OCSP check is required [ocsp] Allow OCSP checks to be disabled [lacp] Check the partner's own state when checking for blocked links [efi] Provide Map_Mem() and associated UNDI callbacks [time] Add support for the ACPI power management timer [rng] Use fixed-point calculations for min-entropy quantities [build] Prevent use of MMX and SSE registers [undi] Treat invalid IRQ numbers as non-fatal errors [librm] Provide symbols for inline code placed into other sections [librm] Ensure that inline code symbols are unique [tls] Ensure received data list is initialised before calling tls_free() [list] Add list_is_first_entry() and list_is_last_entry() [tls] Rename tls_session to tls_connection [tls] Ensure that window change is propagated to plainstream interface [efi] Release SNP devices before starting SAN boot image [efi] Do not raise TPL within EFI_DRIVER_BINDING_PROTOCOL.Supported() [undi] Include subsystem IDs in broken interrupt device check [rhine] Fix usage of mii_read() [velocity] Fix usage of mii_read() and mii_write() [mii] Separate concepts of MII interface and MII device [tcp] Add missing packed attribute on struct tcp_header [mii] Fix typo in parameter name [http] Work around stateful authentication schemes [build] Use positive-form tests when checking for supported warnings [rndis] Clean up error handling path in register_rndis() [ethernet] Use standard 1500 byte MTU unless explicitly overridden [intelxl] Add driver for Intel 40 Gigabit Ethernet NICs [zbin] Fix compiler warning with GCC 9 Peter von Konigsmark (2): [exanic] Power up optical PHYs (if present) [exanic] Add PCI device ID for another X40 variant Petr Borsodi (3): [pci] Correct invalid base-class/sub-class/prog-if order in PCIR [util] Improve processing of ROM images in Option::ROM [util] Add support for EFI ROM images Richard Moore (1): [intel] Add various PCI device IDs Rob Taglang (3): [intel] Add PCI_ROM entry for Intel i354 NIC [intelx] Add PCI_ROM entry for Intel X553 NIC [efi] Exclude link-layer header length from MaxPacketSize Robin Smidsrød (1): [util] Support reversed sort ordering when generating NIC list Roman Kagan (2): [rndis] Register netdev with MAC filled [vmbus] Do not expect version in version_response Steven Haber (1): [intelx] Add support for Intel X552 NIC Sylvie Barlow (3): [mii] Add mii_find() [mii] Add bit-bashing interface [icplus] Add driver for IC+ network card Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2019-01-22tests: remove rule for nonexisting qdev-monitor-testPaolo Bonzini1-1/+0
This test was merged into drive_del-test in 2014. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Laurent Vivier <lvivier@redhat.com> Fixes: e2f3f221885a90de766ce9a3 ("Merge of qdev-monitor-test, blockdev-test") Signed-off-by: Thomas Huth <thuth@redhat.com>
2019-01-22tests/hexloader-test: Don't pass -nographic to the QEMU under testPeter Maydell1-1/+1
The hexloader test invokes QEMU with the -nographic argument. This is unnecessary, because the qtest_initf() function will pass it -display none, which suffices to disable the graphical window. It also means that the QEMU process will make the stdin/stdout O_NONBLOCK. Since O_NONBLOCK is not per-file descriptor but per "file description", this non-blocking behaviour is then shared with any other process that's using the stdin/stdout of the 'make check' run, including make itself. This can result in make falling over with "make: write error: stdout" because it got an unexpected EINTR trying to write output messages to the terminal. This is particularly noticable if running 'make check' in a loop with while make check; do true; done (It does not affect single make check runs so much because the shell will remove the O_NONBLOCK status before it reads the terminal for interactive input.) Remove the unwanted -nographic argument. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2019-01-22configure: Force the C standard to gnu99Thomas Huth1-1/+4
Different versions of GCC and Clang use different versions of the C standard. This repeatedly caused problems already, e.g. with duplicated typedefs: https://lists.gnu.org/archive/html/qemu-devel/2018-11/msg05829.html or with for-loop variable initializers: https://lists.gnu.org/archive/html/qemu-devel/2019-01/msg00237.html To avoid these problems, we should enforce the C language version to the same level for all compilers. Since our minimum compiler versions is GCC v4.8, our best option is "gnu99" for C code right now ("gnu17" is not available there yet, and "gnu11" is marked as "experimental"), and "gnu++98" for the few C++ code that we have in the repository. Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Greg Kurz <groug@kaod.org> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Thomas Huth <thuth@redhat.com>
2019-01-22seccomp: Work-around GCC 4.x bug in gnu99 modeThomas Huth1-1/+2
We'd like to compile QEMU with -std=gnu99, but GCC 4.8 currently fails to compile qemu-seccomp.c in this mode: qemu-seccomp.c:45:1: error: initializer element is not constant }; ^ qemu-seccomp.c:45:1: error: (near initialization for ‘sched_setscheduler_arg[0]’) This is due to a compiler bug which has just been fixed in GCC 5.0: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63567 Since we still want to support GCC 4.8 for a while and also want to use gnu99 mode, work-around the issue by expanding the macro manually. Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Acked-by: Eduardo Otubo <otubo@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2019-01-22block: Work-around a bug in libiscsi 1.9.0 when used in gnu99 modeThomas Huth1-0/+2
The header "scsi-lowlevel.h" of libiscsi 1.9.0 contains some bad "inline" prototype definitions which GCC refuses to compile in its gnu99 mode: In file included from block/iscsi.c:52:0: /usr/include/iscsi/scsi-lowlevel.h:810:13: error: inline function ‘scsi_set_uint16’ declared but never defined [-Werror] inline void scsi_set_uint16(unsigned char *c, uint16_t val); ^ /usr/include/iscsi/scsi-lowlevel.h:809:13: error: inline function ‘scsi_set_uint32’ declared but never defined [-Werror] inline void scsi_set_uint32(unsigned char *c, uint32_t val); ^ [...] This has been fixed by upstream libiscsi in version 1.10.0 (see https://github.com/sahlberg/libiscsi/commit/7692027d6c11 ), but since we still want to support 1.9.0 for CentOS 7 / RHEL7, we have to work-around the issue by redefining the "inline" keyword to use the old "gnu89" mode behavior via "gnu_inline" instead. Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
2019-01-22linux-user: Fix compilation with clang 3.4Thomas Huth2-5/+5
Clang version 3.4.2 does not know the -Wpragmas option yet and bails out with an error when we try to disable it in linux-user/qemu.h. Fortunately, clang has a __has_warning() macro which allows us to add an explicit check for the option that we want to ignore. With that we can check for the availability of "-Waddress-of-packed-member" properly and do not need the "-Wpragmas" at all here. Fixes: 850d5e330a9c68cc998cecc02caf8a3c8d1ee8a3 Reviewed-by: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Thomas Huth <thuth@redhat.com>