[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 00/16] migration queue
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [PULL 00/16] migration queue |
Date: |
Mon, 16 May 2022 09:18:59 +0100 |
User-agent: |
Mutt/2.2.1 (2022-02-19) |
* Leonardo Bras Soares Passos (leobras@redhat.com) wrote:
> On Wed, May 11, 2022 at 5:55 AM Dr. David Alan Gilbert
> <dgilbert@redhat.com> wrote:
> >
> > * Leonardo Bras Soares Passos (leobras@redhat.com) wrote:
> > > From a previous thread:
> > >
> > > On Thu, Apr 28, 2022 at 1:20 PM Dr. David Alan Gilbert
> > > <dgilbert@redhat.com> wrote:
> > > >
> > > > Leo:
> > > > Unfortunately this is failing a couple of CI tests; the MSG_ZEROCOPY
> > > > one I guess is the simpler one; I think Stefanha managed to find the
> > > > liburing fix for the __kernel_timespec case, but that looks like a bit
> > > > more fun!
> > > >
> > > > Dave
> > >
> > > I thought Stefanha had fixed this bug, and we were just waiting for a
> > > new alpine rootfs/image with that fixed.
> > > Is that correct?
> > >
> > > On Tue, May 10, 2022 at 7:43 AM Dr. David Alan Gilbert
> > > <dgilbert@redhat.com> wrote:
> > > >
> > > > * Daniel P. Berrangé (berrange@redhat.com) wrote:
> > > > > On Tue, May 10, 2022 at 10:58:30AM +0100, Dr. David Alan Gilbert
> > > > > wrote:
> > > [...]
> > > > >
> > > > > Yuk. That very much looks like a bug in liburing itself to me.
> > > > >
> > > > >
> > > > > We've exposed the latent bug by including linux/errqueue.h
> > > >
> > > > Yes, I think there was a thread after the 1st pull where Leo identified
> > > > the patch that fixed it; but it's not in that image.
> > >
> > > I only fixed the MSG_ZEROCOPY missing define bug, as I got that
> > > Stefanha had already fixed the issue in liburing/alpine.
> > >
> > > questions:
> > > - Has Stefanha really fixed that, and we are just waiting for a new
> > > image, or have I got that wrong?
> > > - How should I proceed with that?
> > >
> > > - If we proceed with fixing this up in alpine, will that require this
> > > patchset to be on pause until it's fixed there?
> >
> > It needs to pass in CI; so yes.
> >
> > > - If so, is there any suggestion on how to fix that in qemu code?
> > > (this header is needed because of SO_EE_* defines)
> >
> > I've not actually looked at the detail of the failure; but yes I think
> > we need a qemu workaround here.
> >
> > If there's no simple fix, then adding a test to meson.build to
> > conditionally disable liburing might be best; like the test code for
> > libcap_ng I guess (search in meson.build for libcap_ng.found at around
> > line 540.
>
> Hello Dave,
>
> I solved this issue by doing this:
>
> +linux_io_uring_test = '''
> + #include <liburing.h>
> + #include <linux/errqueue.h>
> +
> + int main(void) { return 0; }'''
> +
> linux_io_uring = not_found
> if not get_option('linux_io_uring').auto() or have_block
> linux_io_uring = dependency('liburing', version: '>=0.3',
> required: get_option('linux_io_uring'),
> method: 'pkg-config', kwargs: static_kwargs)
> + if not cc.links(linux_io_uring_test)
> + linux_io_uring = not_found
> + endif
> endif
> +
>
> Seems to work fine in CI, and now Alpine does not fail anymore.
> (See pipeline https://gitlab.com/LeoBras/qemu/-/pipelines/538123933
> for reference)
>
> I am not sure if this is the right thing to do, but I will be sending
> it as a full new patchset (v13), with the first patch being the one
> with the above change and the rest just carrying the recommended
> fixes.
Thanks! That looks promising. I'll cook a new pull.
> I was also thinking I could instead send the single "fix" patch, and
> recommend adding it before my v12. If that is the correct approach for
> this case, please let me know so I can improve in the future. (I am
> trying to figure out what is simpler/best for maintainers)
Either way would be fine; the full series is probably better.
Dave
> Best regards,
> Leo
>
>
>
>
>
>
>
> >
> > Dave
> >
> > > Thank you all!
> > >
> > > Best regards,
> > > Leo
> > >
> > > >
> > > > Dave
> > > >
> > > > > With regards,
> > > > > Daniel
> > > > > --
> > > > > |: https://berrange.com -o-
> > > > > https://www.flickr.com/photos/dberrange :|
> > > > > |: https://libvirt.org -o-
> > > > > https://fstop138.berrange.com :|
> > > > > |: https://entangle-photo.org -o-
> > > > > https://www.instagram.com/dberrange :|
> > > > >
> > > > --
> > > > Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
> > > >
> > >
> > --
> > Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
> >
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
- [PULL 14/16] multifd: multifd_send_sync_main now returns negative on error, (continued)
- [PULL 14/16] multifd: multifd_send_sync_main now returns negative on error, Dr. David Alan Gilbert (git), 2022/05/10
- [PULL 13/16] migration: Add migrate_use_tls() helper, Dr. David Alan Gilbert (git), 2022/05/10
- [PULL 15/16] multifd: Send header packet without flags if zero-copy-send is enabled, Dr. David Alan Gilbert (git), 2022/05/10
- [PULL 16/16] multifd: Implement zero copy write in multifd migration (multifd-zero-copy), Dr. David Alan Gilbert (git), 2022/05/10
- Re: [PULL 00/16] migration queue, Dr. David Alan Gilbert, 2022/05/10
- Re: [PULL 00/16] migration queue, Daniel P . Berrangé, 2022/05/10
- Re: [PULL 00/16] migration queue, Dr. David Alan Gilbert, 2022/05/10
- Re: [PULL 00/16] migration queue, Leonardo Bras Soares Passos, 2022/05/10
- Re: [PULL 00/16] migration queue, Dr. David Alan Gilbert, 2022/05/11
- Re: [PULL 00/16] migration queue, Leonardo Bras Soares Passos, 2022/05/13
- Re: [PULL 00/16] migration queue,
Dr. David Alan Gilbert <=
- Re: [PULL 00/16] migration queue, Stefan Hajnoczi, 2022/05/16
- Re: [PULL 00/16] migration queue, Daniel P . Berrangé, 2022/05/16
- Re: [PULL 00/16] migration queue, Daniel P . Berrangé, 2022/05/16
- Re: [PULL 00/16] migration queue, Stefan Hajnoczi, 2022/05/16