ff83c66ecc
Split QEMUClock into QEMUClock and QEMUTimerList so that we can have more than one QEMUTimerList associated with the same clock. Introduce a main_loop_timerlist concept and make existing qemu_clock_* calls that actually should operate on a QEMUTimerList call the relevant QEMUTimerList implementations, using the clock's default timerlist. This vastly reduces the invasiveness of this change and means the API stays constant for existing users. Introduce a list of QEMUTimerLists associated with each clock so that reenabling the clock can cause all the notifiers to be called. Note the code to do the notifications is added in a later patch. Switch QEMUClockType to an enum. Remove global variables vm_clock, host_clock and rt_clock and add compatibility defines. Do not fix qemu_next_alarm_deadline as it's going to be deleted. Add qemu_clock_use_for_deadline to indicate whether a particular clock should be used for deadline calculations. When use_icount is true, vm_clock should not be used for deadline calculations as it does not contain a nanosecond count. Instead, icount timeouts come from the execution thread doing aio_notify or qemu_notify as appropriate. This function is used in the next patch. Signed-off-by: Alex Bligh <alex@alex.org.uk> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> |
||
---|---|---|
.. | ||
acl.h | ||
aes.h | ||
atomic.h | ||
bitmap.h | ||
bitops.h | ||
bswap.h | ||
cache-utils.h | ||
compatfd.h | ||
compiler.h | ||
config-file.h | ||
crc32c.h | ||
envlist.h | ||
error-report.h | ||
event_notifier.h | ||
fifo8.h | ||
hbitmap.h | ||
host-utils.h | ||
int128.h | ||
iov.h | ||
log.h | ||
main-loop.h | ||
module.h | ||
notify.h | ||
option.h | ||
option_int.h | ||
osdep.h | ||
queue.h | ||
range.h | ||
ratelimit.h | ||
sockets.h | ||
thread-posix.h | ||
thread-win32.h | ||
thread.h | ||
timer.h | ||
tls.h | ||
typedefs.h | ||
uri.h | ||
xattr.h |