Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 67830

Summary: Unable to compile 2.6.8.1 kernel with bootsplash and genkernel
Product: Gentoo Linux Reporter: wiktorw
Component: [OLD] Core systemAssignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers <kernel>
Status: RESOLVED WONTFIX    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description wiktorw 2004-10-16 17:53:25 UTC
I try to compile 2.6.8.1 kernel with the following option enabled:
  Device drivers  --->
      Bootsplash configuration  --->
          [*] Bootup splash screen

I get errors and the compilation stops.

Reproducible: Always
Steps to Reproduce:
1. emerge bootsplash
2. emerge development-sources
3. cd /usr/src/linux
4. genkernel --menuconfig all

Actual Results:  
The compilation process stops, because of errors in kernel source code.
Errors are in the following files:
 drivers/video/bootsplash/bootsplash.c : line 686
 drivers/video/bootsplash/render.c : line 449
 drivers/video/console/fbcon.c : line 663

Expected Results:  
I looked in the source code and the header files, also in /sbin/bootsplash_patch
script. After this I thought bootsplash_patch does not support this version of
kernel yet. So I rechecked everything once again and I found out that the
function prototypes are indeed different in 2.6.8.1 from the versions in 2.6.7.

My soulution was to change the kernel source, thus allowing it to compile
correctly. Below is something like diff of the changes (in imperfect format, alas):

-------------------------------------
drivers/video/bootsplash/bootsplash.c
-686:    fb_set_cmap(&cmap,1,info);
+686:    fb_set_cmap(&cmap,info);
-------------------------------------
drivers/video/bootsplash/render.c
-449:    fb_copy_cmap(&cursor->image.cmap, &info->cursor.image.cmap, 0);
+449:    fb_copy_cmap(&cursor->image.cmap, &info->cursor.image.cmap);
-------------------------------------
drivers/video/console/fbcon.c
-663:    logo = 0;
+663:    /* logo = 0; */

After changing lines in bootsplash.c and render.c, and commenting out one line
in fbcon.c the kernel at least compiles. I still have to check if it works, though.

Portage 2.0.50-r11 (default-x86-2004.2, gcc-3.3.4, glibc-2.3.4.20040808-r1,
2.4.25-gentoo-r1)
=================================================================
System uname: 2.4.25-gentoo-r1 i686 AMD Athlon(tm) Processor
Gentoo Base System version 1.4.16
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=athlon-tbird -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config
/usr/kde/3/share/config /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=athlon-tbird -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache sandbox"
GENTOO_MIRRORS="http://gentoo.prz.rzeszow.pl http://gentoo.inode.at
http://gentoo.netnitco.net http://src.gentoo.pl"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="3dnow X acpi alsa apm arts avi berkdb bitmap-fonts bootsplash crypt cups
dvd dvdr encode f77 foomaticdb gdbm gif gnome gpm gtk gtk2 imlib jpeg kde libg++
libwww mad mikmod mmx motif mpeg ncurses nls oggvorbis opengl oss pam pdflib
perl png python qt quicktime readline sdl slang spell ssl svga tcpd tiff
truetype unicode x86 xml2 xmms xprint xv zlib"
Comment 1 Daniel Drake (RETIRED) gentoo-dev 2004-10-19 02:28:36 UTC
We're migrating over to using gensplash/fbsplash in favour of bootsplash.
You can get it from http://dev.gentoo.org/~spock or you could just merge gentoo-dev-sources which has it included. Marking as WONTFIX as I don't think anybody works on bootsplash anymore.