On Mar 15, 2011, at 2:58 PM, Paolo Bonzini wrote: > On 03/15/2011 02:47 PM, Tristan Gingold wrote: >> >> On Mar 15, 2011, at 2:34 PM, Paolo Bonzini wrote: >> >>> On 03/15/2011 02:16 PM, Tristan Gingold wrote: >>>> Some POSIX OSes (such as Darwin) doesn't have clock_gettime. This patch >>>> falls back on gettimeofday if clock_gettime is not available. >>> >>> This may be okay as a stopgap measure, but any sane porting target for QEMU >>> should have a monotonic clock. In fact, Darwin has it. >> >> Yes mach primitives could be used. But why isn't a monotonic clock used on >> Linux ? According to man, CLOCK_MONOTONIC is monotonic >> while CLOCK_REALTIME isn't. > > /me rereads the patch > > Unfortunately, pthread timed wait/lock functions are documented to use the > realtime clock by default. Using pthread_condattr_setclock is probably not > portable enough, and anyway there is no such function for mutexes so we're > stuck with CLOCK_REALTIME. What you're patching is fine, but those functions > might actually go away soon as they're not supported on Win32.
Fine. > So, in addition to what you've done, you should probably use those Mach > primitives in qemu-timer.h. Yes. But note that the first aim of this patch is to make qemu compiling again on Darwin. Tristan.