aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* build: list libraries after objects, for proper linkageqemu-kvm-0.15.0-gentoo-1qemu-kvm-0.15.0-gentooDiego Elio Pettenò2011-08-141-2/+2
| | | | | Without this change, when using -Wl,--as-needed with GNU linker, the libraries would be discarded.
* Merge remote-tracking branch 'upstream/stable-0.15' into stable-0.15qemu-kvm-0.15.0Avi Kivity2011-08-099-84/+86
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * upstream/stable-0.15: Update version to 0.15.0 qcow2: Fix L1 table size after bdrv_snapshot_goto Revert "floppy: save and restore DIR register" alpha-softmmu: Disable for the 0.15 release branch. vhost build fix for i386 guest agent: add --enable-guest-agent config option user: Restore debug usage message for '-d ?' in user mode emulation lm32: softusb: claim to support full speed Makefile: add missing deps on $(GENERATED_HEADERS) Update version to 0.15.0-rc2 Conflicts: VERSION Signed-off-by: Avi Kivity <avi@redhat.com>
| * Update version to 0.15.0Anthony Liguori2011-08-081-1/+1
| | | | | | | | Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * qcow2: Fix L1 table size after bdrv_snapshot_gotoKevin Wolf2011-08-051-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When loading an internal snapshot whose L1 table is smaller than the current L1 table, the size of the current L1 would be shrunk to the snapshot's L1 size in memory, but not on disk. This lead to incorrect refcount updates and eventuelly to image corruption. Instead of writing the new L1 size to disk, this simply retains the bigger L1 size that is currently in use and makes sure that the unused part is zeroed. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Tested-by: Philipp Hahn <hahn@univention.de> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 35d7ace74bd07e3d6983c1fd7cbfab4e11175689)
| * Revert "floppy: save and restore DIR register"Anthony Liguori2011-08-041-50/+1
| | | | | | | | | | | | | | | | | | This reverts commit 7d905f716bea633f2836e1d661387983aacdc6d6. The use of subsections by this commit are broken because of a fundamental limitations of subsections in the current protocol. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * alpha-softmmu: Disable for the 0.15 release branch.Richard Henderson2011-08-041-1/+0
| | | | | | | | | | | | | | | | The system emulation code was not merged before the branch. Let's leave that work for the next release. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * vhost build fix for i386Wolfgang Mauerer2011-08-041-0/+23
| | | | | | | | | | | | | | | | | | | | vhost.c uses __sync_fetch_and_and(), which is only available for -march=i486 and above (see https://bugzilla.redhat.com/show_bug.cgi?id=624279). Signed-off-by: Wolfgang Mauerer <wolfgang.mauerer@siemens.com> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> (cherry picked from commit 023367e6cd41199521613674b44e9c703c8be1a1)
| * guest agent: add --enable-guest-agent config optionMichael Roth2011-08-041-13/+27
| | | | | | | | | | | | | | | | | | | | | | | | QAPI will require glib/python, but for now the guest agent is the only user. For now, make these dependencies an explicit guest agent one, and give users the option to disable it if need be. Once QAPI is adopted in core QEMU code, we would basically revert this patch. Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * user: Restore debug usage message for '-d ?' in user mode emulationPeter Maydell2011-08-043-11/+16
| | | | | | | | | | | | | | | | | | | | The code which prints the debug usage message on '-d ?' for *-user has to come before the check for "not enough arguments", so that "qemu-foo -d ?" prints the list of possible debug log items rather than the generic usage message. (This was inadvertently broken in commit c235d73.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * lm32: softusb: claim to support full speedMichael Walle2011-08-041-2/+4
| | | | | | | | | | | | | | | | | | | | The QEMU keyboard and mouse reports themselves as full speed devices, though they are actually low speed devices. Until this is fixed, claim that we are supporting full speed devices. Acked-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Michael Walle <michael@walle.cc> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
| * Makefile: add missing deps on $(GENERATED_HEADERS)Michael Roth2011-07-311-1/+3
| | | | | | | | | | | | | | | | | | This fixes a build issue with make -j6+ due to qapi-generated files being built before $(GENERATED_HEADERS) have been created. Tested-by: Stefan Berger <stefanb@linux.vnet.ibm.com> Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
| * Update version to 0.15.0-rc2Anthony Liguori2011-07-311-1/+1
| |
* | Fix default accelerator when configured with --disable-kvmDaniel P. Berrange2011-08-051-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | The default accelerator is hardcoded to 'kvm'. This is a fine default for qemu-kvm normally, but if the user built with ./configure --disable-kvm, then the resulting binaries will not work by default * vl.c: Default to 'tcg' unless CONFIG_KVM is defined Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
* | Fix VERSION to reflect that we're in 0.15.0-rc1Avi Kivity2011-07-311-1/+1
| | | | | | | | Signed-off-by: Avi Kivity <avi@redhat.com>
* | Merge remote-tracking branch 'upstream/stable-0.15' into stable-0.15Avi Kivity2011-07-3128-151/+270
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * upstream/stable-0.15: (24 commits) Bump version to 0.15.0-rc1 virtio-balloon: Unregister savevm section on device unplug virtio-balloon: Add exit handler, fix memleaks balloon: Reject negative balloon values virtio-balloon: Check if balloon registration failed balloon: Don't allow multiple balloon handler registrations target-arm: UNDEF on a VCVTT/VCVTB UNPREDICTABLE to avoid TCG assert target-arm: Handle UNDEF and UNPREDICTABLE cases for VLDM, VSTM target-arm: Support v6 barriers in linux-user mode target-arm: Mark 1136r1 as a v6K core virtio-balloon: Fix header comment; add Copyright balloon: Fix header comment; add Copyright balloon: Separate out stat and balloon handling virtio-balloon: Separate status handling into separate function balloon: Simplify code flow balloon: Add braces around if statements balloon: Make functions, local vars static Let users select their pythons simpletrace: suppress a warning from unused variable Wrap recv to avoid warnings ... Signed-off-by: Avi Kivity <avi@redhat.com>
| * Bump version to 0.15.0-rc1Anthony Liguori2011-07-291-1/+1
| | | | | | | | Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * Merge branch 'for-upstream-0.15' of ↵Justin M. Forbes2011-07-293-35/+95
| |\ | | | | | | | | | git://git.linaro.org/people/pmaydell/qemu-arm
| | * target-arm: UNDEF on a VCVTT/VCVTB UNPREDICTABLE to avoid TCG assertPeter Maydell2011-07-271-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | VCVTT/VCVTB with bit 8 set is UNPREDICTABLE; we choose to UNDEF. This avoids a TCG assert later when the VCVTT/VCVTB code tries to use a source register that wasn't ever set up. We pull the check for the presence of the half-precision extension up in to this common code as well. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| | * target-arm: Handle UNDEF and UNPREDICTABLE cases for VLDM, VSTMPeter Maydell2011-07-271-7/+31
| | | | | | | | | | | | | | | | | | | | | | | | Handle the UNDEF and UNPREDICTABLE cases for VLDM and VSTM. In particular, we now generate an undef exception for overlarge imm8 values rather than generating 1000+ TCG ops and hitting an assertion. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| | * target-arm: Support v6 barriers in linux-user modePeter Maydell2011-07-271-18/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ARMv6 implemented various operations as special cases of cp15 accesses which are true instructions in v7; this includes barriers (DMB, DSB, ISB). Catch this special case at translate time, so that it works in linux-user mode (which doesn't provide a functional get_cp15 helper) as well as system mode. Includes minor cleanup of the existing cases (single switch statement, and doing the "OK in user mode?" test explicitly rather than hiding it in cp15_user_ok()). Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| | * target-arm: Mark 1136r1 as a v6K corePeter Maydell2011-07-262-2/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 1136r1 is actually a v6K core (unlike the 1136r0); mark it as such, thus enabling the TLS registers, NOP hints, CLREX, half and byte wide exclusive load/stores, etc. The VA-to-PA translation registers are not present on 1136r1, so introduce a new feature flag for them, which is enabled on 11MPCore and all v7 cores. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * | virtio-balloon: Unregister savevm section on device unplugAmit Shah2011-07-281-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Migrating after unplugging a virtio-balloon device resulted in an error message on the destination: Unknown savevm section or instance '0000:00:04.0/virtio-balloon' 0 load of migration failed Fix this by unregistering the section on device unplug. Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com>
| * | virtio-balloon: Add exit handler, fix memleaksAmit Shah2011-07-283-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add an exit handler that will free up RAM after a virtio-balloon device is unplugged. Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com>
| * | balloon: Reject negative balloon valuesAmit Shah2011-07-281-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Negative balloon values don't make sense, reject them and throw a qerror with QERR_INVALID_PARAMETER_VALUE. Reported-by: Mike Cao <bcao@redhat.com> Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com>
| * | virtio-balloon: Check if balloon registration failedAmit Shah2011-07-282-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Multiple balloon registrations are not allowed; check if the registration with the qemu balloon api succeeded. If not, fail the device init. Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com>
| * | balloon: Don't allow multiple balloon handler registrationsAmit Shah2011-07-282-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | Multiple balloon devices don't make sense; disallow more than one registration attempt to register handlers. Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com>
| * | virtio-balloon: Fix header comment; add CopyrightAmit Shah2011-07-261-1/+3
| | | | | | | | | | | | Signed-off-by: Amit Shah <amit.shah@redhat.com>
| * | balloon: Fix header comment; add CopyrightAmit Shah2011-07-261-2/+3
| | | | | | | | | | | | Signed-off-by: Amit Shah <amit.shah@redhat.com>
| * | balloon: Separate out stat and balloon handlingAmit Shah2011-07-263-15/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passing on '0' as ballooning target to indicate retrieval of stats is bad API. It also makes 'balloon 0' in the monitor cause a segfault. Have two different functions handle the different functionality instead. Detailed explanation from Markus's review: 1. do_info_balloon() is an info_async() method. It receives a callback with argument, to be called exactly once (callback frees the argument). It passes the callback via qemu_balloon_status() and indirectly through qemu_balloon_event to virtio_balloon_to_target(). virtio_balloon_to_target() executes its balloon stats half. It stores the callback in the device state. If it can't send a stats request, it resets stats and calls the callback right away. Else, it sends a stats request. The device model runs the callback when it receives the answer. Works. 2. do_balloon() is a cmd_async() method. It receives a callback with argument, to be called when the command completes. do_balloon() calls it right before it succeeds. Odd, but should work. Nevertheless, it passes the callback on via qemu_ballon() and indirectly through qemu_balloon_event to virtio_balloon_to_target(). a. If the argument is non-zero, virtio_balloon_to_target() executes its balloon half, which doesn't use the callback in any way. Odd, but works. b. If the argument is zero, virtio_balloon_to_target() executes its balloon stats half, just like in 1. It either calls the callback right away, or arranges for it to be called later. Thus, the callback runs twice: use after free and double free. Test case: start with -S -device virtio-balloon, execute "balloon 0" in human monitor. Runs the callback first from virtio_balloon_to_target(), then again from do_balloon(). Reported-by: Mike Cao <bcao@redhat.com> Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com>
| * | virtio-balloon: Separate status handling into separate functionAmit Shah2011-07-261-20/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Separate out the code to retrieve balloon info from the code that sets balloon values. This will be used to separate the two callbacks from balloon.c and help cope with 'balloon 0' on the monitor. Currently, 'balloon 0' causes a segfault in monitor_resume(). Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com>
| * | balloon: Simplify code flowAmit Shah2011-07-261-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace: if (foo) { ... } else { return 0; } by if (!foo) { return 0; } ... Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com>
| * | balloon: Add braces around if statementsAmit Shah2011-07-261-3/+4
| | | | | | | | | | | | | | | Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com>
| * | balloon: Make functions, local vars staticAmit Shah2011-07-262-15/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | balloon.h had function declarations for a couple of functions that are local to balloon.c. Make them static. Drop the 'qemu_' prefix for balloon.c-local variables, and make them static. Signed-off-by: Amit Shah <amit.shah@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com>
| * | Let users select their pythonsBlue Swirl2011-07-252-6/+19
| | | | | | | | | | | | | | | | | | | | | Add configure check for python, exit if not found. Add switches for specifying the path to python, use the path in Makefile. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
| * | simpletrace: suppress a warning from unused variableBlue Swirl2011-07-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid this warning: CC simpletrace.o /src/qemu/simpletrace.c: In function 'writeout_thread': /src/qemu/simpletrace.c:122:12: error: variable 'unused' set but not used [-Werror=unused-but-set-variable] by adding GCC attribute unused to the variable. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
| * | Wrap recv to avoid warningsBlue Swirl2011-07-2513-15/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid warnings like these by wrapping recv(): CC slirp/ip_icmp.o /src/qemu/slirp/ip_icmp.c: In function 'icmp_receive': /src/qemu/slirp/ip_icmp.c:418:5: error: passing argument 2 of 'recv' from incompatible pointer type [-Werror] /usr/local/lib/gcc/i686-mingw32msvc/4.6.0/../../../../i686-mingw32msvc/include/winsock2.h:547:32: note: expected 'char *' but argument is of type 'struct icmp *' Remove also casts used to avoid warnings. Reviewed-by: Anthony Liguori <aliguori@us.ibm.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
| * | Fix chrdev return value conversionBlue Swirl2011-07-242-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6e1db57b2ac9025c2443c665a0d9e78748637b26 didn't convert brlapi or win32 chrdevs, breaking build for those. Fix by converting the chrdevs. Acked-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
| * | qemu-ga: remove dependency on gio and gthreadAnthony Liguori2011-07-232-29/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As far as I can tell, there isn't a dependency on gthread. Also, the only use of gio was to enable GSocket to accept a unix domain socket. Since GSocket isn't available on OpenSuSE 11.1, let's just remove that dependency. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * | guest-agent: only enable FSFREEZE when it's supported by the kernelAnthony Liguori2011-07-231-5/+7
| | | | | | | | | | | | Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * | Open 1.0 development branch.Anthony Liguori2011-07-231-1/+1
| |/ | | | | | | Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* | Merge branch 'upstream-merge' into nextAvi Kivity2011-07-27224-3032/+10632
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * upstream-merge: (118 commits) Bump version to reflect v0.15.0-rc0 Correct spelling of licensed Register Linux dyntick timer as per-thread signal mc146818rtc: Handle host clock resets qemu-timer: Introduce clock reset notifier notifier: Pass data argument to callback ide: Turn properties any IDE device must have into bus properties virtio-serial: Turn props any virtio-serial-bus device must have into bus props virtio-serial: Clean up virtser_bus_dev_print() output usb-ccid: Drop unused CCIDCardInfo callback print() Remove unused USES_X509_AUTH macro from VNC sasl code Introduce a 'client_add' monitor command accepting an open FD Store VNC auth scheme per-client as well as per-server do not reset no_shutdown after we shutdown the vm vl.c: Don't limit node count by smp count vga: Fix type of lfb/map_addr/end. qemu-char: Print strerror message on failure qemu-timer: change unix timer to dynticks iothread: replace fair_mutex with a condition variable report serial devices created with -device in the PIIX4 config space ... Signed-off-by: Avi Kivity <avi@redhat.com>
| * | Merge commit 'v0.15.0-rc0' into upstream-mergeAvi Kivity2011-07-27106-280/+486
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'v0.15.0-rc0': Bump version to reflect v0.15.0-rc0 Correct spelling of licensed Register Linux dyntick timer as per-thread signal mc146818rtc: Handle host clock resets qemu-timer: Introduce clock reset notifier notifier: Pass data argument to callback ide: Turn properties any IDE device must have into bus properties virtio-serial: Turn props any virtio-serial-bus device must have into bus props virtio-serial: Clean up virtser_bus_dev_print() output usb-ccid: Drop unused CCIDCardInfo callback print() Remove unused USES_X509_AUTH macro from VNC sasl code Introduce a 'client_add' monitor command accepting an open FD Store VNC auth scheme per-client as well as per-server do not reset no_shutdown after we shutdown the vm vl.c: Don't limit node count by smp count vga: Fix type of lfb/map_addr/end. qemu-char: Print strerror message on failure qemu-timer: change unix timer to dynticks iothread: replace fair_mutex with a condition variable multiboot: Support commas in module parameters Signed-off-by: Avi Kivity <avi@redhat.com>
| | * Bump version to reflect v0.15.0-rc0Anthony Liguori2011-07-231-1/+1
| | | | | | | | | | | | Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| | * Correct spelling of licensedMatthew Fernandez2011-07-2364-64/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | Correct typos of "licenced" to "licensed". Reviewed-by: Stefan Weil <weil@mail.berlios.de> Reviewed-by: Andreas F=E4rber <andreas.faerber@web.de> Signed-off-by: Matthew Fernandez <matthew.fernandez@gmail.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| | * Register Linux dyntick timer as per-thread signalJan Kiszka2011-07-233-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Derived from kvm-tool patch http://thread.gmane.org/gmane.comp.emulators.kvm.devel/74309 Ingo Molnar pointed out that sending the timer signal to the whole process, just blocking it everywhere, is suboptimal with an increasing number of threads. QEMU is also using this pattern so far. Linux provides a (non-portable) way to restrict the signal to a single thread: We can use SIGEV_THREAD_ID unless we are forced to emulate signalfd via an additional thread. That case could theoretically be optimized as well, but it doesn't look worth bothering. Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| | * mc146818rtc: Handle host clock resetsJan Kiszka2011-07-231-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | Make use of the new clock reset notifier to update the RTC whenever rtc_clock is the host clock and that happens to jump backward. This avoids that the RTC stalls for the period the host clock was set back. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| | * qemu-timer: Introduce clock reset notifierJan Kiszka2011-07-232-1/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QEMU_CLOCK_HOST is based on the system time which may jump backward in case the admin or NTP adjusts it. RTC emulations and other device models can suffer in this case as timers will stall for the period the clock was tuned back. This adds a detection mechanism that checks on every host clock readout if the new time is before the last result. If that is the case a notifier list is informed. Device models interested in this event can register a notifier with the clock. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| | * notifier: Pass data argument to callbackJan Kiszka2011-07-2313-23/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows to pass additional information to the notifier callback which is useful if sender and receiver do not share any other distinct data structure. Will be used first for the clock reset notifier. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| | * ide: Turn properties any IDE device must have into bus propertiesMarkus Armbruster2011-07-231-1/+4
| | | | | | | | | | | | | | | Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| | * virtio-serial: Turn props any virtio-serial-bus device must have into bus propsMarkus Armbruster2011-07-232-4/+5
| | | | | | | | | | | | | | | Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>