Re: [announce] skarnet.org Spring 2017 release: s6 init fails with buildroot on MIPS

From: Eric Le Bihan <eric.le.bihan.dev_at_free.fr>
Date: Sun, 14 May 2017 20:04:51 +0200

Hi!

On 17-05-13 17:30:14, Laurent Bercot wrote:
> > > s6-ftrigrd: fatal: unable to flush asyncout: Broken pipe
> > I do my cross-compilation tests using QEMU and I remember having this
> > kind of issue sometimes. I always blamed it on a race condition and a
> > slow QEMU emulation, without looking any futher.
>
> s6-ftrigrd uses out-of-band message passing, which is badly specified,
> leaves a lot of leeway for implementations to get it wrong, and will
> only work when doing the exact right workarounds for the system you're
> using. So, getting the sysdeps right is especially important here.
>
> I know Buildroot cannot - for now, and I still hope this changes at
> some point - use predefined sysdeps, or run qemu'd autodetection tests,
> for cross-compilation. But you really do need to make sure that all your
> sysdeps are right.

Adding support for predefined sysdeps in Buildroot should be easy. The
problem is generating these predefined sysdeps for all the combinations
of architectures and libc supported by Buildroot.

Could all the cases be covered by using sysdeps generated with QEMU for
arm, aarch64, mips{32r2,64}{el,}, ppc{64,}{el,}, i386 in glibc,
uclibc-ng and musl flavors?

Running QEMU'd autodetection tests is a no-go, because it would require
building QEMU for Buildroot (which takes time). This kind of option has
already been rejected by upstream when discussing regeneration of
ld.so.cache using a cross-compiled ldconfig.

Best regards,

--
ELB
Received on Sun May 14 2017 - 18:04:51 UTC

This archive was generated by hypermail 2.3.0 : Sun May 09 2021 - 19:38:49 UTC