[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext tim
From: |
Alex Bligh |
Subject: |
Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll |
Date: |
Tue, 13 Aug 2013 13:44:27 +0100 |
On 13 Aug 2013, at 13:22, Jan Kiszka wrote:
> With tweaking I mean:
>
> bool aio_poll(AioContext *ctx, bool blocking,
> void (*blocking_cb)(bool, void *),
> void *blocking_cb_opaque);
>
> i.e. adding a callback that aio_poll will invoke before and right after
> waiting for events/timeouts. This allows to drop/reacquire locks that
> protect data structures used both by the timer thread and other threads
> running the device model.
That's interesting. I didn't give a huge amount of thought
to thread extensibility (not least as the locking needed
fixing first), but the model I had in my head was not that
the locks were taken on exit from qemu_poll_ns and
released on entry to it, but rather that the individual
dispatch functions and timer functions called only took whatever
locks they needed as and when they needed them. IE everything
would already be unlocked prior to calling qemu_poll_ns.
I suppose both would work.
--
Alex Bligh
- [Qemu-devel] [RFC] [PATCHv10 27/31] aio / timers: convert block_job_sleep_ns and co_sleep_ns to new API, (continued)
- [Qemu-devel] [RFC] [PATCHv10 27/31] aio / timers: convert block_job_sleep_ns and co_sleep_ns to new API, Alex Bligh, 2013/08/11
- [Qemu-devel] [RFC] [PATCHv10 28/31] aio / timers: Add test harness for AioContext timers, Alex Bligh, 2013/08/11
- [Qemu-devel] [RFC] [PATCHv10 25/31] aio / timers: Remove main_loop_timerlist, Alex Bligh, 2013/08/11
- [Qemu-devel] [RFC] [PATCHv10 29/31] aio / timers: Add scripts/switch-timer-api, Alex Bligh, 2013/08/11
- [Qemu-devel] [RFC] [PATCHv10 21/31] aio / timers: Remove alarm timers, Alex Bligh, 2013/08/11
- [Qemu-devel] [RFC] [PATCHv10 26/31] aio / timers: Convert rtc_clock to be a QEMUClockType, Alex Bligh, 2013/08/11
- [Qemu-devel] [RFC] [PATCHv10 31/31] aio / timers: Remove legacy interface, Alex Bligh, 2013/08/11
- [Qemu-devel] [RFC] [PATCHv10 24/31] aio / timers: Rearrange timer.h & make legacy functions call non-legacy, Alex Bligh, 2013/08/11
- [Qemu-devel] [RFC] [PATCHv10 30/31] aio / timers: Switch entire codebase to the new timer API, Alex Bligh, 2013/08/11
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Jan Kiszka, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll,
Alex Bligh <=
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Alex Bligh, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Jan Kiszka, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Alex Bligh, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Jan Kiszka, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Alex Bligh, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Stefan Hajnoczi, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Alex Bligh, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Jan Kiszka, 2013/08/13
- Re: [Qemu-devel] [RFC] [PATCHv10 00/31] aio / timers: Add AioContext timers and use ppoll, Stefan Hajnoczi, 2013/08/14