Booting an alternate kernel
Roman Bogorodskiy
novel at FreeBSD.org
Mon Jan 8 18:18:00 UTC 2018
Hi,
Recently I upgraded FreeBSD -CURRENT as of mid-2016 to a fresh one (Jan
6-7 -CURRENT). Of course I didn't read UPDATING and missed 20171125
entry so it failed to find root. However, when I manually set root to
'ufs:/dev/ada0s3', it failed to boot because init segfaulted (I did
installkernel but not installworld).
I decided to boot kernel.old. There's a note here:
https://www.freebsd.org/platforms/ppc.html#issues
that tells how to boot a custom kernel, e.g. doing
0 > boot hd:loader hd:0
It doesn't work for me.
I figured out that I can proceed to normal boot from the OpenFirmware
shell using
0 > boot hd:\ppc\boot1.elf
But I don't quite understand how to specify invalid partition?
I tried things like "boot hd:\ppc\boot1.elf hd:4" but it appears to
treat "hd:4" as a loader.
As far as I understand, boot1.elf source code is:
https://github.com/freebsd/freebsd/blob/master/stand/powerpc/boot1.chrp/boot1.c
From what I can see:
https://github.com/freebsd/freebsd/blob/master/stand/powerpc/boot1.chrp/boot1.c#L414
it only allows to define 'path' which is PATH_LOADER "/boot/loader" by
default; and bootpath is set from /chosen bootpath property.
Would appreciate if somebody could help with the follow:
* How do I force invalid 'bootpath' so it drops into loader without
loading kernel (or other ways to load kernel.old)?
* Hints how to debug init segfault issue
Thanks,
Roman Bogorodskiy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 455 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-ppc/attachments/20180108/63273c09/attachment.sig>
More information about the freebsd-ppc
mailing list