On Tue, Aug 06, 2013 at 01:30:18PM +0100, Alex Bligh wrote: > --On 6 August 2013 14:02:18 +0200 Stefan Hajnoczi > <stefa...@redhat.com> wrote: > My preference would be to move these to qemu_clock_deadline_ns (without > the INT32_MAX check) and delete the old qemu_clock_deadline routine > entirely, but I don't really understand the full set of circumstances > in which the qtest routines are meant to work.
Okay, that's excellent. It would be great to move to a single function. The way qtest works is that it executes QEMU in a mode that does not run guest code. Instead of running guest code it listens for commands over a socket. The wire protocol can peek/poke memory, notify of interrupts, and warp the clock. There are test cases that use qtest to test emulated devices. When qtest either steps the clock or sets it to a completely new value using qtest_clock_warp() it runs all vm_clock timers that should expire before the new time. Does this help? > >Please include > >an explanation of why qemu_timeout_ns_to_ms() will be needed in the > >future (there are no callers in this patch). > > You mean in the commit text as well as the following? > > +/* Transition function to convert a nanosecond timeout to ms > + * This is used where a system does not support ppoll > + */ Usually a doc comment is enough since it explains what the function does. If it's a low-level function is may be necessary to give more context in the commit description. Stefan