unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#47723: Boot failure with u-boot on cubietruck
@ 2021-04-12 11:18 Julien Lepiller
  2021-04-13 19:14 ` Danny Milosavljevic
  0 siblings, 1 reply; 3+ messages in thread
From: Julien Lepiller @ 2021-04-12 11:18 UTC (permalink / raw)
  To: 47723

Hi Guix!

This week-end, I had to reboot my server and it couldn't boot anymore.
It's a Cubietruck, an armhf machine that's in my parents' basement.
They helped me debug the issue (though that was not easy, since they
only have windows machines and not a lot of knowledge about Linux).

At boot, the machine loads the kernel and initramfs, and gets stuck at
"Starting kernel...". We tried booting various generations, including
the very firts generation (as I never had to run guix gc on the
machine, I kept all the generations around, that's 129 of them!). None
of them worked, and they all get stuck at the same message.

I suspect something might have changed in u-boot recently (maybe the
upgrade to 2021.01, since I didn't have to reboot this year yet). The
board might not be initialized as expected and all kernels from 4.19 to
the latest 5.11 fail to boot.

In the end, I reinstalled a foreign distribution (that uses u-boot
2017.01) and can SSH to the machine, but I haven't reinstalled Guix
yet. Guix was installed on an external disk, so I haven't lost anything
other that the bootloader it installed. I can chroot to the Guix system:

  mount -v --bind /dev /mnt/dev
  mount -v --bind /dev/pts /mnt/dev/pts
  mount -vt proc proc /mnt/proc
  mount -vt sysfs sysfs /mnt/sys
  chroot /mnt /run/current-system/profile/bin/bash
  . /etc/profile

What should be my next step?

I tried running guix from inside the chroot:
  /root/.config/current/bin/guix-daemon --build-users-group=guixbuild &

But when I try to use it:

  guix system build /etc/config.scm
  guix system: error: while setting up the build environment: cannot
  pivot old root directory onto
  '/gnu/store/brkm5bb59w9i4kmyznk0k4ndsz6dzq95-system.drv.chroot/real-root':
  Invalid argument

My hope was to run "guix system reconfigure" from the chroot, so I
would not loose my previous generations, and would not have to build
too much, since there are almost no substitutes for armhf.




^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#47723: Boot failure with u-boot on cubietruck
  2021-04-12 11:18 bug#47723: Boot failure with u-boot on cubietruck Julien Lepiller
@ 2021-04-13 19:14 ` Danny Milosavljevic
  2021-04-17 18:22   ` Julien Lepiller
  0 siblings, 1 reply; 3+ messages in thread
From: Danny Milosavljevic @ 2021-04-13 19:14 UTC (permalink / raw)
  To: Julien Lepiller; +Cc: 47723

[-- Attachment #1: Type: text/plain, Size: 1481 bytes --]

Hi Julien,

On Mon, 12 Apr 2021 13:18:30 +0200
Julien Lepiller <julien@lepiller.eu> wrote:

> I suspect something might have changed in u-boot recently (maybe the
> upgrade to 2021.01, since I didn't have to reboot this year yet). 
[...]
> board might not be initialized as expected and all kernels from 4.19 to
> the latest 5.11 fail to boot.

Yeah, that happens sometimes with u-boot.  It sucks--but I suspect there's just
not a lot of people updating their u-boot installation all the time (or at all
ever).

I'm not sure whether it's better to just provide the old u-boot or to figure
out what exactly broke (the latter is probably gonna take quite some time).

> In the end, I reinstalled a foreign distribution (that uses u-boot
> 2017.01) and can SSH to the machine, but I haven't reinstalled Guix
> yet. Guix was installed on an external disk, so I haven't lost anything
> other that the bootloader it installed. I can chroot to the Guix system:
> 
>   mount -v --bind /dev /mnt/dev
>   mount -v --bind /dev/pts /mnt/dev/pts
>   mount -vt proc proc /mnt/proc
>   mount -vt sysfs sysfs /mnt/sys
>   chroot /mnt /run/current-system/profile/bin/bash
>   . /etc/profile
> 
> What should be my next step?
> 
> I tried running guix from inside the chroot:
>   /root/.config/current/bin/guix-daemon --build-users-group=guixbuild &

Try

unshare -m /root/.config/current/bin/guix-daemon --build-users-group=guixbuild &

It should work then.

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#47723: Boot failure with u-boot on cubietruck
  2021-04-13 19:14 ` Danny Milosavljevic
@ 2021-04-17 18:22   ` Julien Lepiller
  0 siblings, 0 replies; 3+ messages in thread
From: Julien Lepiller @ 2021-04-17 18:22 UTC (permalink / raw)
  To: Danny Milosavljevic; +Cc: 47723-done

Le Tue, 13 Apr 2021 21:14:49 +0200,
Danny Milosavljevic <dannym@scratchpost.org> a écrit :

> Hi Julien,
> 
> On Mon, 12 Apr 2021 13:18:30 +0200
> Julien Lepiller <julien@lepiller.eu> wrote:
> 
> > I suspect something might have changed in u-boot recently (maybe the
> > upgrade to 2021.01, since I didn't have to reboot this year yet).   
> [...]
> > board might not be initialized as expected and all kernels from
> > 4.19 to the latest 5.11 fail to boot.  
> 
> Yeah, that happens sometimes with u-boot.  It sucks--but I suspect
> there's just not a lot of people updating their u-boot installation
> all the time (or at all ever).
> 
> I'm not sure whether it's better to just provide the old u-boot or to
> figure out what exactly broke (the latter is probably gonna take
> quite some time).

Thanks for the help, I finally managed to boot it with the newer
2021.04 u-boot. Maybe 2021.01 did something wrong that was fixed later?

> 
> > In the end, I reinstalled a foreign distribution (that uses u-boot
> > 2017.01) and can SSH to the machine, but I haven't reinstalled Guix
> > yet. Guix was installed on an external disk, so I haven't lost
> > anything other that the bootloader it installed. I can chroot to
> > the Guix system:
> > 
> >   mount -v --bind /dev /mnt/dev
> >   mount -v --bind /dev/pts /mnt/dev/pts
> >   mount -vt proc proc /mnt/proc
> >   mount -vt sysfs sysfs /mnt/sys
> >   chroot /mnt /run/current-system/profile/bin/bash
> >   . /etc/profile
> > 
> > What should be my next step?
> > 
> > I tried running guix from inside the chroot:
> >   /root/.config/current/bin/guix-daemon
> > --build-users-group=guixbuild &  
> 
> Try
> 
> unshare -m /root/.config/current/bin/guix-daemon
> --build-users-group=guixbuild &
> 
> It should work then.

Ah, I found another workaround, not sure how it works but, from the
foreign system I could "mount --make-rprivate /" and it would work.





^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-04-17 18:24 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-12 11:18 bug#47723: Boot failure with u-boot on cubietruck Julien Lepiller
2021-04-13 19:14 ` Danny Milosavljevic
2021-04-17 18:22   ` Julien Lepiller

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).