[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 11/18] qemu-timer: optimize timerlist_run_timers
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH 11/18] qemu-timer: optimize timerlist_run_timers |
Date: |
Thu, 6 Aug 2015 15:36:09 +0200 |
The case of no active timers is relatively common. Check it
outside the lock.
Signed-off-by: Paolo Bonzini <address@hidden>
---
qemu-timer.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/qemu-timer.c b/qemu-timer.c
index 2463fe6..dc11ab9 100644
--- a/qemu-timer.c
+++ b/qemu-timer.c
@@ -476,6 +476,10 @@ bool timerlist_run_timers(QEMUTimerList *timer_list)
QEMUTimerCB *cb;
void *opaque;
+ if (!atomic_read(&timer_list->active_timers)) {
+ return false;
+ }
+
qemu_event_reset(&timer_list->timers_done_ev);
if (!timer_list->clock->enabled) {
goto out;
--
2.4.3
- [Qemu-devel] [PATCH 08/18] aio: document locking, (continued)
- [Qemu-devel] [PATCH 08/18] aio: document locking, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 14/18] block: explicitly acquire aiocontext in timers that need it, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 05/18] aio: tweak walking in dispatch phase, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 15/18] quorum: use atomics for rewrite_count, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 18/18] aio: update locking documentation, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 01/18] iothread: release iothread around aio_poll, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 07/18] aio-win32: remove walking_handlers, protecting AioHandler list with list_lock, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 12/18] block: explicitly acquire aiocontext in callbacks that need it, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 17/18] block: explicitly acquire aiocontext in aio callbacks that need it, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 13/18] block: explicitly acquire aiocontext in bottom halves that need it, Paolo Bonzini, 2015/08/06
- [Qemu-devel] [PATCH 11/18] qemu-timer: optimize timerlist_run_timers,
Paolo Bonzini <=