Hi Ludovic, [email protected] (Ludovic Courtès) writes:
> Mark H Weaver <[email protected]> skribis: > >> Here's a proposed patch that I hope will fix the problem, although I'm >> unable to easily test it because I no longer use binary substitutes, and >> I have not yet built the core packages for i686-linux. >> >> However, I've applied this patch to my x86_64 system, and verified that >> it does not cause any problems there. >> >> Would someone be willing to test it and report back? > > I tried it and it initially failed to build with: [...] > I fixed this and pushed as a7c8716928a240ba2c36d360e4ffeb447671fa6b. Thanks very much! Hydra has now successfully built GRUB on i686-linux, so I'm closing this bug. > I wanted to try ‘guix system vm-image -s i686-linux’ on my x86_64 laptop > to make sure GRUB runs fine. Unfortunately, I stumbled upon another > issue, which is that qemu-system-i386 built for i686-linux segfaults at > startup: [...] > I was able to work around it by disabling KVM: > > diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm > index 73d0191de..a675111d4 100644 > --- a/gnu/build/vm.scm > +++ b/gnu/build/vm.scm > @@ -104,7 +104,8 @@ the #:references-graphs parameter of 'derivation'." > ;; hardware virtualization to still use these commands. KVM support is > ;; still buggy on some ARM32 boards. Do not use it even if available. > ,@(if (and (file-exists? "/dev/kvm") > - (not target-arm32?)) > + (not target-arm32?) > + (not (string-suffix? "-i386" qemu))) > '("-enable-kvm") > '()) > > I suspect a KVM bug in Linux 4.17 though, because running the same > ‘qemu-system-i386’ binary under strace works… Perhaps worth applying > the patch above in the meantime, WDYT? It would be better to auto-detect the presence of KVM support at run time, but that's a wishlist item that deserves its own ticket. This is good enough for now. > Anyway, with this patch I successfully run: > > guix system vm-image gnu/system/examples/bare-bones.tmpl -s i686-linux > > and confirmed that the resulting image would boot through GRUB. Sounds great, thanks again! Mark
