Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
genkernel + initramfs + fbsplash = kernel panic
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Installing Gentoo
View previous topic :: View next topic  
Author Message
ozbird
Apprentice
Apprentice


Joined: 21 Oct 2003
Posts: 185

PostPosted: Sat Jul 30, 2005 1:39 pm    Post subject: genkernel + initramfs + fbsplash = kernel panic Reply with quote

After getting the splash screen to work again with genkernel-3.3.3 (GENSPLASH, not BOOTSPLASH option),
I now get a kernel panic:
Code:
<snip>

Freeing unused kernel memory: 184k used
.: 8: Can't open /etc/startup.conf
Kernel panic - not syncing: Attempted to kill init!

I get the same message on both an x86 build (Athlon XP) and an amd64 (Athlon64) box.

The problem seems to be the combination of initramfs and fbsplash; initramfs was working fine before I added GENSPLASH, and disabling the initramfs seems to let me boot okay at the moment.

Is this a bug?
Back to top
View user's profile Send private message
ozbird
Apprentice
Apprentice


Joined: 21 Oct 2003
Posts: 185

PostPosted: Sat Jul 30, 2005 1:44 pm    Post subject: Reply with quote

This is the grub entry that generates the error:
Code:
title Gentoo Linux (2.6.12-gentoo-r6)
        root (hd0,0)
        kernel /kernel-genkernel-x86-2.6.12-gentoo-r6 root=/dev/ram0 init=/linuxrc real_root=/dev/hda3 video=vesa:ywrap,pmipal,mtrr,1280x1024-32@85 splash=verbose,theme:default CONSOLE=/dev/tty1 quiet
        initrd /initramfs-genkernel-x86-2.6.12-gentoo-r6


And the workaround:
Code:
title Gentoo Linux (2.6.12-gentoo-r6)
        root (hd0,0)
        kernel /kernel-genkernel-x86-2.6.12-gentoo-r6 root=/dev/hda3 video=vesa:ywrap,pmipal,mtrr,1280x1024-32@85
Back to top
View user's profile Send private message
jmbsvicetto
Moderator
Moderator


Joined: 27 Apr 2005
Posts: 4734
Location: Angra do Heroísmo (PT)

PostPosted: Sat Jul 30, 2005 2:38 pm    Post subject: Reply with quote

Hi.

Have you tried using the following entry?
Code:
title Gentoo Linux (2.6.12-gentoo-r6)
        root (hd0,0)
        kernel /kernel-genkernel-x86-2.6.12-gentoo-r6 root=/dev/hda3 video=vesa:ywrap,pmipal,mtrr,1280x1024-32@85 splash=verbose,theme:default CONSOLE=/dev/tty1 quiet
        initrd /initramfs-genkernel-x86-2.6.12-gentoo-r6

_________________
Jorge.

Your twisted, but hopefully friendly daemon.
AMD64 / x86 / Sparc Gentoo
Help answer || emwrap.sh
Back to top
View user's profile Send private message
Henk Poley
n00b
n00b


Joined: 19 Jul 2004
Posts: 17

PostPosted: Sat Jul 30, 2005 3:06 pm    Post subject: Reply with quote

Hmm, I'm seeing the same thing. Probably a bug in the initrd :-/

I'll try working around the problem by ignoring the initrd 'root' as per jmbsvicetto's instructions.
Back to top
View user's profile Send private message
Henk Poley
n00b
n00b


Joined: 19 Jul 2004
Posts: 17

PostPosted: Sat Jul 30, 2005 3:34 pm    Post subject: Reply with quote

btw, the full error message is (for me):
Code:
Couldn't load font file
Couldn't load 20 pt font from (null)
FBIOSPLASH_SETPIC failed, error code 515.
Hint: are you calling'setpic' for the current virtual console?
FBIOSPLASH_SETSTATE failed error code 22.
.: 8: Can't open /etc/startup.conf
Kernel panic - not syncing: Attempting to kill init


grub.conf entry:
Code:
title=Myth-2.6.12-suspend2-r3
root (hd0,0)
kernel (hd0,0)/kernel-genkernel-x86-2.6.12-suspend2-r3 quiet root=/dev/hda3 video=sisfb:mode:720x576x16:tvstandard:pal elevator=cfq CONSOLE=/dev/tty1 acpi_sleep=s3_bios
initrd /initramfs-genkernel-x86-2.6.12-suspend2-r3


[edit] Added grub.conf entry
Back to top
View user's profile Send private message
vincent delft
n00b
n00b


Joined: 04 Jan 2003
Posts: 58
Location: Belgium

PostPosted: Sat Jul 30, 2005 7:36 pm    Post subject: Reply with quote

got the same problem here.
But, I can boot without initrd 8O

Compilation was with "genkernel --udev all"

For me this sounds like a problem in the initramfs.
Back to top
View user's profile Send private message
ozbird
Apprentice
Apprentice


Joined: 21 Oct 2003
Posts: 185

PostPosted: Sat Jul 30, 2005 9:18 pm    Post subject: Reply with quote

jmbsvicetto wrote:
Hi.

Have you tried using the following entry?
Code:
title Gentoo Linux (2.6.12-gentoo-r6)
        root (hd0,0)
        kernel /kernel-genkernel-x86-2.6.12-gentoo-r6 root=/dev/hda3 video=vesa:ywrap,pmipal,mtrr,1280x1024-32@85 splash=verbose,theme:default CONSOLE=/dev/tty1 quiet
        initrd /initramfs-genkernel-x86-2.6.12-gentoo-r6


This generates the "Couldn't load font file" etc. messages and kernel panic, similar to what Henk described.

Starting the splash screen early in the boot problem appears to be thoroughly broken. With the workaround I described (drop all references to the initramfs and splash parameters at boot), once the /etc/init.d/splash script runs later in the boot process you get a working splash console.

I'm going to try disabling GENSPLASH again to see if the vanilla initramfs still works (in case this was broken with genkernel-3.3.3)

UPDATE: Without GENSPLASH, I still get the kernel panic if I try and use the initramfs via "root=/dev/ram0 init=/linuxrc real_root=/dev/hda3"


Last edited by ozbird on Sat Jul 30, 2005 10:03 pm; edited 1 time in total
Back to top
View user's profile Send private message
ozbird
Apprentice
Apprentice


Joined: 21 Oct 2003
Posts: 185

PostPosted: Sat Jul 30, 2005 9:25 pm    Post subject: Reply with quote

vincent delft wrote:
Compilation was with "genkernel --udev all"


Which version of genkernel?
genkernel-3.2 and above (I think) use "--udev" by default, so you can just use "genkernel all".
It should give you a message to that effect if "--udev" isn't required.

I'm using genkernel-3.3.3 and the unstable (heh) tree (ACCEPT="~arch").
Anyone getting this problem with a the stable tree (ACCEPT="arch")?
Back to top
View user's profile Send private message
vincent delft
n00b
n00b


Joined: 04 Jan 2003
Posts: 58
Location: Belgium

PostPosted: Sat Jul 30, 2005 9:33 pm    Post subject: Reply with quote

I'm using the Portage of 2005/07/29.
And by emerging genkernel (stable) I've got 3.3.3.

Indeed, --udev is no more needed, but that's no the cause of the Kernel Panic.

I'm just restarting the whole installation process by looking carefuly at each steps ... we will see.
Back to top
View user's profile Send private message
ozbird
Apprentice
Apprentice


Joined: 21 Oct 2003
Posts: 185

PostPosted: Sat Jul 30, 2005 10:11 pm    Post subject: Kernel parameters Reply with quote

I'm just going through the output of genkernel again to make sure I understand exactly what it's asking for (it's not the first time previously working parameters stop working after a genkernel update.)

Here's what it says for me:
Code:
* Required Kernel Parameters:
*     real_root=/dev/$ROOT
*
*     Where $ROOT is the device node for your root partition as the
*     one specified in /etc/fstab
*
* If you require Genkernel's hardware detection features; you MUST
* tell your bootloader to use the provided INITRAMFS file. Otherwise;
* substitute the root argument for the real_root argument if you are
* not planning to use the initrd...

* WARNING... WARNING... WARNING...
* Additional kernel cmdline arguments that *may* be required to boot properly...
* add "vga=791 splash=silent,theme:default CONSOLE=/dev/tty1 quiet" if you use a gensplash framebuffer ]


I have the real_root= parameter set, but is this also implying that you don't pass root= and init= parameters?

I tried removing the init= parameter, but as I expected it panicked very quickly.
I don't see how it could boot at all if you don't specify root= unless there is some initramfs magic that initrd didn't have.
Back to top
View user's profile Send private message
vincent delft
n00b
n00b


Joined: 04 Jan 2003
Posts: 58
Location: Belgium

PostPosted: Sat Jul 30, 2005 10:24 pm    Post subject: Reply with quote

still the same :cry:

Now, I'm sure, I've followed each setps as described on the installation guide.

I'm using genkernel 3.3.3, linux 2.6.12-gentoo-r6, I've used the portage of 20050729 (last one).

my grub.conf is:
Code:
default 0
timeout 30
splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo
root (hd0,0)
kernel /kernel-2.6.12-gentoo-r6 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda7 udev
initrd /initrd-2.6.12-gentoo-r6



But, if, on the grub interface, I change the grub parameters to:
Code:

kernel /kernel-2.6.12-gentoo-r6 root=/dev/hda7


Than he BOOT !!!!.

Thus I think it's linked to the initrd generated by genkernel.

What to do to have something that works with genkernel ?
adding video (vga) information ?
Back to top
View user's profile Send private message
ozbird
Apprentice
Apprentice


Joined: 21 Oct 2003
Posts: 185

PostPosted: Sat Jul 30, 2005 10:43 pm    Post subject: Bug reported Reply with quote

I've reported the bug to Gentoo bugzilla as bug #100846 https://bugs.gentoo.org/show_bug.cgi?id=100846
I've included this thread as a reference.
Back to top
View user's profile Send private message
vincent delft
n00b
n00b


Joined: 04 Jan 2003
Posts: 58
Location: Belgium

PostPosted: Sat Jul 30, 2005 10:47 pm    Post subject: Reply with quote

I've added "vga=791 splash=silent" like requested in the genkernel.log file.

But, this has no impact. Kernal panic at the same place.
Back to top
View user's profile Send private message
Henk Poley
n00b
n00b


Joined: 19 Jul 2004
Posts: 17

PostPosted: Sat Jul 30, 2005 11:19 pm    Post subject: Reply with quote

According to the bugreport the following should fix it:

# emerge --sync
# emerge genkernel

be sure to get genkernel > 3.3.4, and not 3.3.3
Back to top
View user's profile Send private message
ozbird
Apprentice
Apprentice


Joined: 21 Oct 2003
Posts: 185

PostPosted: Sun Jul 31, 2005 12:13 am    Post subject: More speed, less haste Reply with quote

I'm happy that it's apparently fixed (haven't tried it yet), but it still bothers me that genkernel-3.3.3 was marked stable with this bug present.
I live in the unstable tree so I expect the odd glitch, but stable tree users shouldn't be test guinea pigs; for them it's the quality, not the quantity, of the updates that count. With genkernel updates occurring on an almost daily basis, it doesn't sound anywhere near stable yet.

genkernel-3.2.9 has been out for about a week, so if there are no known issues with it that's probably the version that belongs in the stable tree.
Failing that, 3.1.6 is a fairly safe bet.
Back to top
View user's profile Send private message
depontius
Advocate
Advocate


Joined: 05 May 2004
Posts: 3509

PostPosted: Sun Jul 31, 2005 1:25 am    Post subject: Reply with quote

This doesn't appear to be a problem with just fbsplash. It appears to be a problem simply using initramfs.

Perhaps I don't have all the right kernel switches set, but I'm not using fbsplash, and get the same boot symptoms as the rest of you when I try to use initramfs. I'm now booting without initrd, just fine. I'm just glad I didn't really need an initrd to boot.

From what I can tell off of the kernel list, initramfs is the start of some really major boot changes, not the least of which is deprecation of non-modular kernels - all "*" that can be "M" will be "M", and the "*" will go away. The initramfs was slipped into Gentoo, almost by stealth, with 2.6.12. It has given me trouble of some form, every time I've tried to use it. I guess it's a good thing the bugs are getting hammered out now, before it becomes absolutely necesssary.

Now I've got to get my server off of devfs and onto udev, since they've deprecated it with teeth in the new kernel. Fortunately all of my other systems are udev.
_________________
.sigs waste space and bandwidth
Back to top
View user's profile Send private message
automan
n00b
n00b


Joined: 02 May 2005
Posts: 19

PostPosted: Sun Jul 31, 2005 3:42 am    Post subject: Reply with quote

Henk Poley wrote:
According to the bugreport the following should fix it:

# emerge --sync
# emerge genkernel

be sure to get genkernel > 3.3.4, and not 3.3.3


that didnt work...

is there any way for me to boot my machine without using this?
Back to top
View user's profile Send private message
ozbird
Apprentice
Apprentice


Joined: 21 Oct 2003
Posts: 185

PostPosted: Sun Jul 31, 2005 5:53 am    Post subject: Reply with quote

automan wrote:
Henk Poley wrote:
According to the bugreport the following should fix it:

# emerge --sync
# emerge genkernel

be sure to get genkernel > 3.3.4, and not 3.3.3


that didnt work...

is there any way for me to boot my machine without using this?


The missing, but implied, step is to run "genkernel all" again, and re-emerge any dependent kernel modules (e.g. nvidia-kernel).
It doesn't hurt to "rm -rf /var/tmp/genkernel" either - that will force busybox etc. to be rebuilt.

gentoo-sources-2.6.12-r7 and genkernel-3.3.5 are in the unstable tree now, and they mostly work for me.
The "Couldn't load font file" problem still exists, but doesn't break anything serious that I've noticed.
Back to top
View user's profile Send private message
AusGen
n00b
n00b


Joined: 31 Jul 2005
Posts: 11
Location: Jervis Bay, ACT, Australia

PostPosted: Sun Jul 31, 2005 7:02 am    Post subject: Still bugged as of 31 Jun 05 Reply with quote

Thanks for all the above advice, removing the initrd line, and associated flags in the kernel, (root=/dev/ram0 real_root= etc...) fixes the bootup problem. I also followed the advice to emerge --sync and update genkernel to 3.3.5, but this has not fixed the problem. It appears the initramfs (initrd) is still bugged. The genkernel command I was using was :
genkernel --mrproper --lvm2 --install --bootsplash --kernname=ati_alsa --menuconfig all
(lvm2 as I have /usr /var and /home on lvm2)

Noob question: Why bother with initrd if it boots without it?


This is my first post, I've just changed over to Gentoo from Debian for my AMD64. With the exception of the above problem I've been impressed with what I've seen so far. Distcc rocks with Gentoo!
Back to top
View user's profile Send private message
vincent delft
n00b
n00b


Joined: 04 Jan 2003
Posts: 58
Location: Belgium

PostPosted: Sun Jul 31, 2005 8:38 am    Post subject: Reply with quote

In my case an emerge sync has solve the problem.

To sum up, I've done:
- emerge sync
- emerge genkernel (which give me 3.3.5)
- genkernel all
- grub-install /dev/hda
- reboot.
Back to top
View user's profile Send private message
jaybode
n00b
n00b


Joined: 31 Jul 2005
Posts: 3

PostPosted: Sun Jul 31, 2005 11:49 am    Post subject: Great stuff! Reply with quote

Great stuff everyone..
My first crack at Gentoo and I am mighty impressed with portage and the use support.
:D
Just a note, the Aust. mirror is still behind in revisions. The US site sync'ed to ver. 3.3.5
Remerging Genkernal now..
:roll:
Cheers,
Back to top
View user's profile Send private message
depontius
Advocate
Advocate


Joined: 05 May 2004
Posts: 3509

PostPosted: Sun Jul 31, 2005 12:48 pm    Post subject: Re: Still bugged as of 31 Jun 05 Reply with quote

AusGen wrote:

Noob question: Why bother with initrd if it boots without it?


Decent enough question. A good explanation may take a little, if you want. Anyone else mind? (Gotta run, for now)
_________________
.sigs waste space and bandwidth
Back to top
View user's profile Send private message
jaybode
n00b
n00b


Joined: 31 Jul 2005
Posts: 3

PostPosted: Sun Jul 31, 2005 3:35 pm    Post subject: Now working fine.. Reply with quote

Using 3.5.5 works the trest.. cheers everyone..

Ausgen - Initrd is used mainly because of using genkernel.. this gentoo-kernel is like the Bootable CD one, in that it detects hardware etc. then boots the real kernel with all the modules it found that it needed duing the 'mini boot' from Ram disk (using Initrd)

I am probably wrong, but this is how I saw it (anyone correct me if Im wrong)

I started with building my own Kerenel, but like the idea of GenKernel so if I move my system to USB portable laptop drive.
I can then boot of 'most' computers (BIOS capable, or a floppy/CD to kick it off).

The emerge build for genkernel was stuffed - I followed the instructions. I think the ramfs-image was not loading the right kernel support for the ramdisk. These are the sort of messages (the very first one anyway) that you get when you have not compiled the correct filesystem support into the kernel that your trying to boot from.

Not bad hey, 2 weeks into Linux and I already sound like a geek.

Cheers,

J
Back to top
View user's profile Send private message
depontius
Advocate
Advocate


Joined: 05 May 2004
Posts: 3509

PostPosted: Sun Jul 31, 2005 4:29 pm    Post subject: Reply with quote

Jabode, you're close, but there are a few details that are off.

There are 2 ways to build a kernel, monolithic and modular. With a monolithic kernel, all of the drivers and filesystems, etc are compiled into the kernel. With a modular kernel, drivers, filesystems, etc are compiled separately, and loaded at run time. The problem with modules is that you need disk and filesystem access in order to get them. That means if your chipset disk or filesystem driver, etc is in a module, you can't get there in order to load the modules.

Enter the initrd. It's a ramdisk that's loaded with a disk image that contains the necessary drivers. You don't even really need *all* of the drivers, just enough to get disk (or network, for networked filesystems) access, in order to get at the rest of the modules. You're still using the same kernel, just loading things from a different source. Incidentally, there's an operation called pivot_root that switches you from the initrd to the real disk, once you're ready.

Why modular kernel? Because every driver makes the kernel bigger. In the old days, maybe even now, there was a maximum size, and modules were a way to get around that. Even without the maximum size, those extra drivers would just waste memory. With modules, it's possible to come up with a one-size-fits-almost-all kernel, wasting only disk space (cheap) for the modules themselves.

Why the change to initramfs? Right now, each driver needs two methods of initialization, monolithic and modular. The kernel guys would like to simplify things, and only have the one initialization method - modular. At the same time, they recognized that the initrd is a rather limited startup mechanism. So they're working toward an improvement - "early userspace," essentially like initrd, only more versatile. Once initramfs and early userspace are all in place and well bugged out, they're going to yank the monolithic initialization code. (in a few years) Drivers will get simpler, hopefully more reliable. But we'll all have to get used to using an initramfs.
_________________
.sigs waste space and bandwidth
Back to top
View user's profile Send private message
c0p
n00b
n00b


Joined: 29 Jul 2005
Posts: 56

PostPosted: Sun Jul 31, 2005 9:33 pm    Post subject: Reply with quote

how do i emerge an old genkernel version? i want to stick with gentoo but it doesn't seem to be working for me in 2.6-12-r6. It doesn't get my eth0 or mouse so far...haven't been able to go much further without the network reliant emerges
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Installing Gentoo All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum