Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 18482 - Can't compile CS4281 in gentoo-sources-2.4.20-r2
Summary: Can't compile CS4281 in gentoo-sources-2.4.20-r2
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High major
Assignee: x86-kernel@gentoo.org (DEPRECATED)
URL:
Whiteboard:
Keywords:
: 18582 (view as bug list)
Depends on:
Blocks:
 
Reported: 2003-03-30 12:33 UTC by Sergey Kuleshov (RETIRED)
Modified: 2003-04-27 00:40 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Kuleshov (RETIRED) gentoo-dev 2003-03-30 12:33:15 UTC
I've tried to update my kernel from gentoo-sources-2.4.20-r1 to r2. I used
exactly the same config file, but when compiling it failed to build cs4281 sound
card. It was complaining about unresolved symbols in cs4281* someting. When I
tried to build it as a module the make modules step was passed fine, but at the
modules_install step it gave the same unresolved symbol error in cs4281* . I
would like to point out once more that this config worked for me on r1 release.

Reproducible: Always
Steps to Reproduce:
1. Select support of CS4281 sound card to be compiled into kernel.
2. Run make dep && make clean bzImage
3. Select support of CS4281 sound card to be compiled as a module.
4. Run make dep && make clean bzImage modules modules_install

Actual Results:  
Either bzImage or modules_install steps fail with unresolved symbols error in
the cs4281 module.

Expected Results:  
Obvious: to get kernel compiled.

Portage 2.0.47-r10 (default-x86-1.4, gcc-3.2.2, glibc-2.3.1-r4)
=================================================================
System uname: 2.4.20 i686 Celeron (Coppermine)
GENTOO_MIRRORS="http://distro.ibiblio.org/pub/Linux/distributions/gentoo
http://gentoo.oregonstate.edu"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config
/usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY=""
USE="x86 3dnow encode libg++ mikmod gdbm berkdb slang readline sdl tcpd perl
python opengl -aalib alsa apm arts avi -bonobo cdr crypt cups dga directfb -dvd
-esd fbcon flash gif -gnome gphoto2 gpm gtk -gtk2 -gtkhtml -guile imlib -java
jpeg kde lcms -libwww mmx motif mozilla mpeg ncurses nls odbc oggvorbis oss pam
pcmcia pdflib png pnp -qt quicktime samba spell ssl -tcltk tetex truetype usb
wmf X xml xml2 xmms xv zlib -svga"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=i686 -O3 -pipe"
CXXFLAGS="-march=i686 -O3 -pipe"
ACCEPT_KEYWORDS="x86"
MAKEOPTS="-j2"
AUTOCLEAN="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
FEATURES="sandbox ccache"
Comment 1 Martin Holzer (RETIRED) gentoo-dev 2003-04-01 08:57:33 UTC
*** Bug 18582 has been marked as a duplicate of this bug. ***
Comment 2 Simon Marlow 2003-04-02 05:42:57 UTC
Bug 18582 was (correctly) marked as a dup, but it contains some more info which I've copied here:

Compiling gentoo-sources-2.4.20 (r1 & r2) with the cs4281 sound module 
enabled, gives a cs4281.o that contains an undefined __bad_udelay symbol.

Digging a bit deeper, this seems to be a bug in the cs4281 driver itself which 
is exposed by compiling with -finline-functions on (the default with -03).  
The function delayus() in this module gets inlined, exposing some calls to 
udelay() with over-long timeouts.

I can work around it by turning the optimisation level in the kernel down to -
O2.
Comment 3 Sergey Kuleshov (RETIRED) gentoo-dev 2003-04-02 05:59:49 UTC
In Bug 18582 it says that the problem exists with both r1 & r2, however, I DID compile r1 release with no trouble whatsoever.
Comment 4 Simon Marlow 2003-04-02 06:05:57 UTC
I'll wave my hands and offer a possible explanation for that.

I suspect the bug is more dependent on gcc version than kernel version.  As I mentioned in #18582, the bug seems to be exposed by some pretty aggressive optimisation done on the code in cs4281m.c.  Did you perchance upgrade gcc between 2.4.20-gentoo-r1 and 2.4.20-gentoo-r2?
Comment 5 Jay Pfeifer (RETIRED) gentoo-dev 2003-04-27 00:40:10 UTC
get the patch from bug 18969. apply, and this should fix the unresolved symbols issue. 
 
Jay