When you rebuild kernel from source RPM emu10k1 module will have unresolvable symbols. The problem is in drivers/sound/Makefile that incorrectly adds emu10k1 directory to SUB_DIRS instead of MOD_SUB_DIRS during compile. Make enters emu10k1 directory and compiles audio.c with kernel symbols instead of module symbols. Later on, when modules are being built this object file is considered as current and therfor will not be recompiled. I wonder how you guys at RedHat could build kernel RPM's with working module? Did you remove audio.o during the build or replaced the module in RPM's by hand? Bad bad boys! ;-) I shall upload a modified emu10k1 patch to this bug report that fixes the problem. However I know that Makefile is still not entirely correct. I see now way emu10k1 can be compiled into kernel like this (this problem was NOT caused by my modification). Unfortunatly I did not have time to fix and test it. I can post a fix, but I need some1 with SBLive! to compile the driver into kernel and test if it works. Also it would be nice if you could inform creative guys about this problem. Im too lazy to do it myself ;-)
Created attachment 177 [details] Fixed EMU10k1 patch. There's only 1 modification SUB_DIRS -> MOD_SUB_DIRS
*** Bug 11353 has been marked as a duplicate of this bug. ***
We did not mangle the RPM; for reasons I have not investigated, the problem simply didn't show up in our build system. In any case, this is fixed in our current kernel source package.