Hello all, after emerging bootsplash with kernel 2.6.5 I'm getting a strange error at boot time, anyway bootsplash seems to work fine, but look here please: blk: queue dedce200, I/O limit 4095Mb (mask 0xffffffff) bootsplash 3.1.4-2004/02/19: looking for picture.... found (1024x768, 62230 bytes, v3). bootsplash: status on console 0 changed to on Unable to handle kernel paging request at virtual address e0b77032 printing eip: c026b8e6 *pde = 1edff067 *pte = 00000000 Oops: 0000 [#1] PREEMPT CPU: 0 EIP: 0060:[<c026b8e6>] Not tainted EFLAGS: 00010202 (2.6.5) EIP is at splash_renderc+0xe6/0x19e eax: 00000001 ebx: e0b77032 ecx: dfa19032 edx: 00000000 esi: 00000000 edi: 00000000 ebp: 0000ad55 esp: deaa7d80 ds: 007b es: 007b ss: 0068 Process splash.bin (pid: 5478, threadinfo=deaa6000 task=c173c720) Stack: 00000800 00000010 00000000 ad550000 00000000 00000000 00000001 00000010 de54e220 c0417ed4 c0417c40 c026bf97 e09e0000 c0417c40 00000007 00000000 c0417ec5 0000030c 00000019 00000010 00000008 00000010 00000008 e09e0000 Call Trace: [<c026bf97>] splash_cursor+0x134/0x1e4 [<c0264d1f>] fbcon_cursor+0x3bc/0x401 [<c011444e>] recalc_task_prio+0x90/0x1aa [<c01152df>] schedule+0x332/0x59c [<c020e301>] invert_screen+0x188/0x1bf [<c01221c6>] group_send_sig_info+0x95/0x97 [<c020bcca>] clear_selection+0x18/0x5d [<c020e87c>] hide_cursor+0x2b/0x42 [<c020eb8c>] redraw_screen+0x1ad/0x1f5 [<c012229f>] kill_pg_info+0x52/0x54 [<c020f2a4>] vc_resize+0x3f6/0x505 [<c026936a>] splash_status+0xfd/0x171 [<c0269627>] splash_write_proc+0x171/0x445 [<c0176d75>] proc_file_write+0x0/0x42 [<c0176dac>] proc_file_write+0x37/0x42 [<c014a224>] vfs_write+0xd0/0x135 [<c014a32e>] sys_write+0x42/0x63 [<c0106d33>] syscall_call+0x7/0xb Code: 0f b7 13 83 c3 02 f7 c7 40 00 00 00 74 5b 0b 54 24 0c 89 11 <6>bootsplash 3.1.4-2004/02/19: looking for picture.... found (1024x768, 62230 bytes, v3). bootsplash: status on console 1 changed to on bootsplash 3.1.4-2004/02/19: looking for picture.... found (1024x768, 62230 bytes, v3). bootsplash: status on console 2 changed to on bootsplash 3.1.4-2004/02/19: looking for picture.... found (1024x768, 62230 bytes, v3). bootsplash: status on console 3 changed to on bootsplash 3.1.4-2004/02/19: looking for picture.... found (1024x768, 62230 bytes, v3). bootsplash: status on console 4 changed to on bootsplash 3.1.4-2004/02/19: looking for picture.... found (1024x768, 62230 bytes, v3). bootsplash: status on console 5 changed to on eth0: link down NET: Registered protocol family 10 IPv6 over IPv4 tunneling driver mtrr: base(0xb0020000) is not aligned on a size(0x180000) boundary mtrr: 0xb0000000,0x8000000 overlaps existing 0xb0000000,0x800000 is it normal? Thank you. Que
Bumping to spock
Nope, it shouldn't happen. Does this occur at every boot, or just from time to time? Did it happen with pre -r13 bootsplashes? Did it happen with kernels <2.6.5?
This is happening at every boot, and the error is the same with -r12 and -r13, it seems to happen on kernel 2.6.4-2.6.5 I haven't tested it on kernels < 2.6.4. Que
Same problem here after having upgraded from gentoo-dev-sources-2.6.3-r1 to gentoo-dev-sources-2.6.5. I'm running bootsplash-0.6-r10. The error messages don't appear with every boot. But there is another significant difference compared to the old behavior: In the past the splash screen appeared at the very beginning of the boot procedure. Now it's started in the middle of the boot procedure and mixes up the bott messages.
Udo: could you try upgrading to -r14 and see if this fixes the delayed splash problem you're experiencing? As for the oops, I'm still trying to reproduce it on my system. If I succeed, I'll see what I can do to fix it.
Same problem with -r14. I tried to remerge an recompile some components (kernel, bootsplash, hotplug, linux-headers-2.6.5) but couldn't solve it. The situation now is: When the last init script has finished, the dark purple scrollable area of the bootsplash window appears in the middle of my screen. The crash messages are scrolling through the purple area. The rest of the bootsplash window (i.e. the light purple area including the gentoo script logo) isn't shown. It's shown on screens 2-6 and also shown on screen 1 when I switch back to it.
BTW: Kernel 2.6.5 doesn't have an initrd configuration option. The gentoo bootsplash HOWTO doesn't cover this case. We possibly only misconfigured our kernel or grub
Got It!! It's simply a misconfigured kernel. Let me explain: This worked with kernel <=2.6.3: # # Block devices # # CONFIG_BLK_DEV_FD is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=m # CONFIG_BLK_DEV_CRYPTOLOOP is not set # CONFIG_BLK_DEV_NBD is not set CONFIG_BLK_DEV_RAM=m CONFIG_BLK_DEV_RAM_SIZE=4096 CONFIG_BLK_DEV_INITRD=y # CONFIG_LBD is not set I used "make oldconfig" to convert this configuration to a configuration for my kernel 2.6.5. The result was: # # Block devices # # CONFIG_BLK_DEV_FD is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=m # CONFIG_BLK_DEV_CRYPTOLOOP is not set # CONFIG_BLK_DEV_COMPRESSLOOP is not set # CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_CARMEL is not set CONFIG_BLK_DEV_RAM=m CONFIG_BLK_DEV_RAM_SIZE=4096 # CONFIG_LBD is not set You may notice, there is no longer an option CONFIG_BLK_DEV_INITRD. Also "make menuconfig" didn't show this option. But after changing CONFIG_BLK_DEV_RAM=m to CONFIG_BLK_DEV_RAM=y an initrd option became visible. My config now is # # Block devices # # CONFIG_BLK_DEV_FD is not set # CONFIG_PARIDE is not set # CONFIG_BLK_CPQ_DA is not set # CONFIG_BLK_CPQ_CISS_DA is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set CONFIG_BLK_DEV_LOOP=y # CONFIG_BLK_DEV_CRYPTOLOOP is not set # CONFIG_BLK_DEV_COMPRESSLOOP is not set # CONFIG_BLK_DEV_NBD is not set # CONFIG_BLK_DEV_CARMEL is not set CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=4096 CONFIG_BLK_DEV_INITRD=y # CONFIG_LBD is not set It's working now and it's exactly what the bootsplash HOWTO suggests to do (peinlich, peinlich).
When I reported this bug, I was using: CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=4096 CONFIG_BLK_DEV_INITRD=y with kernel 2.6.5 and with previous versions, and I'm using this settings right now, but the error is still here... Are you sure it's only this config option that generates this problem? Que
No I'm not sure. I've seen discussions about this problem in the forum. Different people found different solutions for the problem. Some of them played around with their kernel paramters, some of them recreated their /boot/initrd-* file... Udo
Quequero: could you please attach your kernel config here? I'll see if I'm able to reproduce the problem on my system then.
Created attachment 29478 [details] My kernel config Sure, here it is, and please let me know if you need something else. Que
I can't reproduce the problem on my system (with your config file). I'll try to give the bootsplash code a closer look, we'll see if I'm able to find anything that could be causing this issue.
I can't understand what could be the problem... Kernel is started with these parameters in GRUB: title Gentoo root (hd0,6) kernel /vmlinuz ro vga=791 video=mtrr,vesa:1024x768 splash=silent initrd=/initrd-1024x768 But I think they are fine, anyway there is that strange memory access... I really don't know, probably it's because video ram is shared with normal ram... I really don't know, I'm sorry :( Que
Does the problem occur when bootsplash is started in verbose mode (ie. no "splash=silent" in kernel params)? I have only tested your config in verbose, maybe that's why nothing was wrong?
Nope, same problem without splash=silent image.. The same if I remove if completely from grub, I thought it was KDM (it's irrational, I know ;p)... But I've the same problem... Browsing google I found a reference to this bug on: http://qa.mandrakesoft.com/show_bug.cgi?id=8608 An user wrote that this bug happens when he has its wlan card into the slot... I removed my wlan card and kdm... But it's happening again... Sob :( Que
Ok, I'm unable to reproduce it with the config you posted. Could you send me (please do not post it here on Bugzilla) vmlinux and drivers/video/bootsplash/render.o from you kernel tree, and the initrd you're using?
Done it! Please let me know if you need something else. Que
Ok, I've done some tests with the latest configs and binary images and here's what I found. The problem is caused by BLK_DEV_INITRD not being set (you need both BLK_DEV_RAM and BLK_DEV_INITRD set to 'y' (not 'm')). Setting these options solved this issue on my system. In the config posted here on bugzilla these options are set to 'y' and this is probably why I was unable to reproduce this bug. Please check that your kernel has these two options set to 'y', if it doesn't - set them (and check if bootsplash works), if it does - post an updated config file here.
As stated on my third post: I have it root@shatzy linux # grep BLK_DEV_INITRD kern-2.6.5-bootsplash && grep BLK_DEV_RAM kern-2.6.5-bootsplash CONFIG_BLK_DEV_INITRD=y CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=4096 anywaiy here it is my conf :) Que
Created attachment 31098 [details] My kernel config, part 2 My kernel config for kernel 2.6.5 patched with bootsplash. Que
I hit exactly the same OOPS with kernel gentoo-2.6.5-r1 WHEN I CHANGED THE NEXT SETTINGS in the .config: < CONFIG_HIGHMEM=y < CONFIG_HIGHPTE=y 123c121 < CONFIG_REGPARM=y So, one of these params is resposible for the OOPS, because everything else is exactly the same, and bootsplash worked perfectly at the given system. I did not changed anything else, oterwise.
ok., it was (in my case) REGPARM=y. It seems, the splash routine does not like it. Without this param it works again without troubles, and OOPS is gone.
REGPARM is known to cause problems with Bootsplash (that's why the bootsplash ebuilds warn about this option). Unfortunately, in this case something else has to be causing the problem (REGPARM is disabled).
Well, I'm having the same problems in my laptop, and I also have set the RAM disk and InitRD support in kernel, but nothing changed - bootsplash still oops... HOWEVER, I did some tests and found something interesting: the oops ALWAYS happens AFTER the "bootsplash: status in console 0 changed to on" phase. Then, I edited the /etc/conf.d/bootsplash, and set the BOOTSPLASH_TTYS="1 2 3 4 5", INSTEAD of the normal BOOTSPLASH_TTYS="0 1 2 3 4 5". So, the oops was gone !! Of course, TTY0 does not have a bootsplash this way, but the oops doesn't happens anymore. The other TTYs have a normal bootsplash... Can this be useful for you ? I hope so.. Anyway, I'll continue with my tests... :) Good luck!
I don't know if this is important or not, but I'm using Gentoo 2004.1, with this configuration: - P4 Celeron 1.7 - 512 Mb RAM - SiS 650 Graphics card, with 16Mb (shared) - gentoo-dev-sources (kernel 2.6.5-r1) - linux-headers 2.4.22 - UDEV enabled - ACPI enabled If you need some other information, just tell me...
I've just released a new bootsplash - v0.6.1. It includes a fix for the problems you've been experiencing. To test if it works, please emerge development-sources-2.6.7-rc1 (2.6.7 is important here - bootsplash patches for previous kernels were not updated) and bootsplash-0.6.1, and then have your kernel patched the standard way (bootsplash_patch). Please let me know whether the problem is fixed.
Yes, it worked ! No more ooopses ! I followed all the steps and it worked. However, I won't use the development-sources... I'll wait for this to work with gentoo-dev-sources... :) By the way, do you know what was causing the ooops ?
Great, I'm closing this bug. Please reopen in case any of you still experience similar problems. The oops was caused by fbcon's attempts at rendering cursor outside of the bootsplash-managed and resized console. It worked like that - before the /etc/init.d/bootsplash was executed, the cursor was on line 100. After /etc/init.d/bootsplash finished its job, for a moment the cursor was still on this line, but at the same time, there was no longer such line since the console had been resized to, let's say, 80 lines. Rendering cursor on line 100 meant writing to unallocated memory and this resulted in an oops.
It seems I've forgotten to actually mark it as fixed ;)
Hmmm, that's right... It's not an obvious thing, but it really can cause segfault. Ok, then, but... What's the solution ?? :) Will this be fixed in gentoo-dev-sources, or people that wish to use bootsplash should use development-sources ??
Well, the solution is the new patch ;) You can diff it against the old ones to see what exactly has been changed. And yeah, this will surely be fixed in g-d-s, as soon as there is a g-d-s-2.6.7. Till then devel-sources would be the best choice if you want to use bootsplash and if this problems annoys you.
Complain no more ! I found what was causing the oops: to make this a short story, the bootsplash initrd was not set up correctly, I think. After regenerating the initrd, with instructions found in bootsplash's site, the graphical boot came up with bootsplash NOT segfault-ing, even in gentoo-dev-sources ! Of course bootsplash has a bug - the one you talked about above - but with initrd set perfectly, it runs without problems.