On 22/03/2018 09:56, Peter Xu wrote: > OOB can enable iothread for parsing even on Windows. We need some tunes > to enable that on Windows otherwise it'll break Windows users. This > patch fixes the breakage on Windows with qemu-system-ppc.exe. > > Reported-by: Howard Spoelstra <hsp.c...@gmail.com> > Tested-by: Howard Spoelstra <hsp.c...@gmail.com> > Suggested-by: Paolo Bonzini <pbonz...@redhat.com> > Signed-off-by: Peter Xu <pet...@redhat.com> > --- > iothread.c | 4 ++++ > util/aio-win32.c | 4 +++- > 2 files changed, 7 insertions(+), 1 deletion(-) > > diff --git a/iothread.c b/iothread.c > index 1b3463cb00..9f52270ae1 100644 > --- a/iothread.c > +++ b/iothread.c > @@ -31,11 +31,15 @@ typedef ObjectClass IOThreadClass; > #define IOTHREAD_CLASS(klass) \ > OBJECT_CLASS_CHECK(IOThreadClass, klass, TYPE_IOTHREAD) > > +#ifdef CONFIG_LINUX > /* Benchmark results from 2016 on NVMe SSD drives show max polling times > around > * 16-32 microseconds yield IOPS improvements for both iodepth=1 and > iodepth=32 > * workloads. > */ > #define IOTHREAD_POLL_MAX_NS_DEFAULT 32768ULL > +#else > +#define IOTHREAD_POLL_MAX_NS_DEFAULT 0ULL > +#endif > > static __thread IOThread *my_iothread; > > diff --git a/util/aio-win32.c b/util/aio-win32.c > index d6d5e02f00..a67b00c6ad 100644 > --- a/util/aio-win32.c > +++ b/util/aio-win32.c > @@ -410,5 +410,7 @@ void aio_context_setup(AioContext *ctx) > void aio_context_set_poll_params(AioContext *ctx, int64_t max_ns, > int64_t grow, int64_t shrink, Error **errp) > { > - error_setg(errp, "AioContext polling is not implemented on Windows"); > + if (max_ns) { > + error_setg(errp, "AioContext polling is not implemented on Windows"); > + } > } >
Queued, thanks. Paolo