* Peter Maydell (peter.mayd...@linaro.org) wrote:
> On 10 November 2015 at 14:25, Juan Quintela <quint...@redhat.com> wrote:
> > From: "Dr. David Alan Gilbert" <dgilb...@redhat.com>
> >
> > When transmitting RAM pages, consume pages that have been queued by
> > MIG_RPCOMM_REQPAGE commands and send them ahead of normal page scanning.
> >
> > Note:
> >   a) After a queued page the linear walk carries on from after the
> > unqueued page; there is a reasonable chance that the destination
> > was about to ask for other closeby pages anyway.
> >
> >   b) We have to be careful of any assumptions that the page walking
> > code makes, in particular it does some short cuts on its first linear
> > walk that break as soon as we do a queued page.
> >
> >   c) We have to be careful to not break up host-page size chunks, since
> > this makes it harder to place the pages on the destination.
> >
> > Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com>
> > Reviewed-by: Juan Quintela <quint...@redhat.com>
> > Signed-off-by: Juan Quintela <quint...@redhat.com>
> 
> I've just discovered that this is causing 'make check' failures on
> my OSX host (unfortunately something in my setup is causing
> 'make check' failures to not always cause a build failure, so I
> didn't notice earlier):

It's only failing on OSX? Every time or only sometimes?

> manooth$ (make -C build/x86 -j8 && cd build/x86 &&
> QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64
> QTEST_QEMU_IMG=qemu-img MALLOC_PERTURB_=${MALLOC_PERTURB_:-$((RANDOM %
> 255 + 1))}  tests/ahci-test)
> [...]
> 
> /x86_64/ahci/flush/simple: OK
> /x86_64/ahci/flush/retry: OK
> /x86_64/ahci/flush/migrate: qemu: qemu_mutex_lock: Invalid argument
> qemu-system-x86_64:Broken pipe
>  Not a migration stream
> qemu-system-x86_64: load of migration failed: Invalid argument

OK, let me see if I can find - I do add a mutex in there (src_page_req_mutex)
that I guess is the most likely culprit; it's initialised by 
migrate_get_current (once
using a bool) so it should be OK.

If you can find a way to get a backtrace off that qemu_mutex_lock case
that would be great; I'd assume the later errors are the fall out from that.

Dave

> 
> thanks
> -- PMM
--
Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK

Reply via email to