bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 0/3] Rumpkernel in GNU Guix


From: Janneke Nieuwenhuizen
Subject: Re: [PATCH 0/3] Rumpkernel in GNU Guix
Date: Tue, 16 May 2023 14:04:38 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux)

Sergey Bugaev writes:

Hello,

> On Tue, May 16, 2023 at 11:58 AM Janneke Nieuwenhuizen <janneke@gnu.org> 
> wrote:
>> Sadly when actually using them booting hangs:
>>
>>     start: pci.arbiter:
>>
>> So, yeah.  To be continued.
>
> Not that I know anything about any of this, but:
>
> * why are you passing --store-type=typed to pci-arbiter? (Bad
>   copy-paste from ext2fs options?) AFAICS pci-arbiter does not
>   accept that option and does not even link to libstore. (it is
>   probably trying to report the error to you, but at that point it has
>   not yet opened the Mach console device)

Oops, yeah nice catch; fixed.

> * you have to link everything prior to and including ext2fs
>   statically, i.e. the exec server can be the first dynamically-linked
>   bootstrap task

I was wondering about that as Debian's grub.cfg uses the static
variants, but in the Guix build only ext2fs.static got built.  As I
couldn't find any reference to how building ex2fs.static was triggered,
I ignored it...

Also, until recently Guix simply used /hurd/ext2fs, but that failed on
some machines

    https://issues.guix.gnu.org/58320

so it was --kind of reluctantly-- changed.  It would be good to know
we're simply supposed to use ext2fs.static.

Thanks to your remark I now found

     https://salsa.debian.org/hurd-team/hurd/-/blob/master/debian/rules#L32

and by adding

     --enable-static-progs=ext2fs,iso9660fs,rumpdisk,pci-arbiter,acpi

to our package the .STATIC variants got nicely built and I used them for
our grub.cfg.

> * you probably need acpi in there too, before rumpdisk?

Ah, I that could be as the boot now hangs at:

    start cpi.arbiter: pci pci.arbiter: Starting the PCI system: Gratuitous 
error

which got me puzzled; the /boot/grub/grub.cfg from

    
https://cdimage.debian.org/cdimage/ports/latest/hurd-i386/debian-hurd-20220824.img

now has is pretty similar to ours; it also doesn't start acpi.

I would like to try it but am not sure how to do that, I've tried to
look at

    
https://salsa.debian.org/installer-team/grub-installer/-/blob/master/otheros.sh#L147

if acpi.static might have been removed recently, but I can only find
ext2fs.static, not even a reference to rumpdisk.static?

Also, there was this recent commit in rumpkernel:

    debian/patches/acpi.diff: Disable for now as it breaks booting
    
https://salsa.debian.org/hurd-team/rumpkernel/-/commit/58540d6ee101fd29894d4f05553cb306229cb74d

Hmm?

Anyway, I've added acpi.static* and it now hangs on that

    start acpi:

> Hope this helps :)

Yes, thanks!  Not there yet...

Greetings,
Janneke


*)

menuentry "GNU with the Hurd 0.9-2.3ff7053" {
  multiboot .../boot/gnumach root=device:hd0s1 
root=87c2de13-0154-3617-d0fa-141f87c2de13 gnu.system=...-system 
gnu.load=/gnu/store/0q0rwwjhmd3l4y2zkqxx3ai1xmkhjyf6-system/boot
  module .../hurd/acpi.static acpi --host-priv-port='${host-port}' 
--device-master-port='${device-port}' --next-task='${pci-task}' 
'$(apci-task=task-create)' '$(task-resume)'
  module .../hurd/pci-arbiter.static pci.arbiter --next-task='${disk-task}' 
'$(pci-task=task-create)'
  module .../hurd/rumpdisk.static rumpdisk --next-task='${fs-task}' 
'$(disk-task=task-create)'
  module .../hurd/ext2fs.static ext2fs 
--multiboot-command-line='${kernel-command-line}' 
--exec-server-task='${exec-task}' --store-type=typed 
--x-xattr-translator-records '${root}' '$(fs-task=task-create)'
  module .../hurd/exec.static exec '$(exec-task=task-create)'
}

-- 
Janneke Nieuwenhuizen <janneke@gnu.org>  | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com



reply via email to

[Prev in Thread] Current Thread [Next in Thread]