Penguin

Differences between version 23 and predecessor to the previous major change of KernelNotes.

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 23 Last edited on Saturday, May 27, 2006 10:34:20 pm by AristotlePagaltzis Revert
Older page: version 22 Last edited on Thursday, July 28, 2005 9:12:13 pm by MattBrown Revert
@@ -1,37 +1,29 @@
-!!!Compile Problems 
+!!! Compile Problems  
+  
 <pre> 
 __In file included from ide-cd.c:318:__ 
 __ide-cd.h:440: error: long, short, signed or unsigned used invalidly for `slot_tablelen'__ 
 </pre> 
  
-This occurs if you're using a more recent compiler than the kernel can be compiled for, for example gcc 3.x to compile a kernel (kernels only work with <gcc 3). try: 
+This occurs if you're using a more recent compiler than the kernel can be compiled for, for example [GCC] 3.x to compile a kernel (kernels only work with < [GCC] 3). If you want to use eg. <tt>gcc-2.95</tt>, try:  
+  
 <verbatim> 
- make CC=gcc-2.95 bzImage 
+make CC=gcc-2.95 bzImage 
 </verbatim> 
-(if you want to use gcc-2.95)  
  
-In /usr/src/linux/README (at least for kernel versions 2.4.x and below) you will find the following snippet: 
+In <tt> /usr/src/linux/README</tt> (at least for kernel versions 2.4.x and below) you will find the following snippet: 
  
-<verbatim> 
+ <verbatim> 
  COMPILING the kernel: 
  
  - Make sure you have gcc 2.95.3 available. gcc 2.91.66 (egcs-1.1.2) may 
  also work but is not as safe, and *gcc 2.7.2.3 is no longer supported*. 
-</verbatim> 
+ </verbatim> 
  
 But of course you always read the compile instructions for software you download, right? :) 
  
-The fact is, however, that this isn't a problem with the compiler. gcc 3.x is just doing what it should be doing: checking for errors. If you actually look at the source, you'll find the line  
-<pre>  
- __u8 short slot_tabelen;  
-</pre>  
-which is obviously an error. Go talk to the maintainer, kids ;)  
-  
-Yes, this is true, but the point is that the rest of the compile won't go that smoothly either, even if it does compile chances are that there are going to be "hidden" problems as the compiler compiles away things that the developer was relying on etc.  
-  
------  
- !!Bootsplash compiled into your kernel; linking fails  
+!! Linking fails with bootsplash compiled into your kernel 
  
 <verbatim> 
  LD .tmp_vmlinux1 
 drivers/built-in.o(.text+0xa898a): In function `splash_getraw': 
@@ -46,73 +38,30 @@
 : undefined reference to `con2fb_map' 
 make: *** [.tmp_vmlinux1] Error 1 
 </verbatim> 
  
-You need to have framebuffer console support compiled in. Can 't be a module! 
+You need to have framebuffer console support compiled in. It can 't be a module! 
  
-Set '' CONFIG_FRAMEBUFFER_CONSOLE=y'' in the .config. 
+Set <tt> CONFIG_FRAMEBUFFER_CONSOLE=y</tt> in the <tt> .config</tt>
  
-----  
- !!!Version 2.6 series LinuxKernel notes 
+!!! Version 2.6 series LinuxKernel notes 
  
-!!ModuleInitTools 
+!! ModuleInitTools 
  
-Starting with 2.5.51, Linus merged a new way of handling modules. He's added versioning on every symbol inside a module, with the intent that the kernel can read the module and what hooks it uses, compare it to an internal database of whats critical and whats not , and can decide whether the module could be used even if it wasnt compiled specifically for the current running kernel. This adds a lot more flexibility for people forced to run binary-only proprietary modules to support their hardware. What this means for the user is a completely rewritten set of module tools (modprobe(8), insmod(8), lsmod(8)). On [Debian] you can get these with a quick  
+Starting with 2.5.51, modules have a different format. The extension has also changed from <tt>.o</tt> to <tt>.ko</tt> , for kernel object . To work with modules, you need a completely rewritten set of module tools (modprobe(8), insmod(8), lsmod(8)), collectively called <tt>module-init-tools</tt> . They can coexist with the 2.4.x-specific tools. __Note, however__ that <tt>module-init-tools</tt> no longer reads <tt>modules.conf</tt> and instead uses a new file called modprobe.conf(5) which has a different syntax. <tt>man 5 modprobe.conf</tt> will be your friend here. It's possible to set <tt>modprobe.conf</tt> to handle modules for both 2.4.x and 2.5.x kernels, which is pretty cool if you're a dual-booter.  
  
- apt-get install module-init-tools  
+!! Nvidia and 2.6 notes  
  
-Module-init -tools is backwards compatible with 2.4.x kernels, so if you're dual booting between a stable and a beta kernel, you've got module functionality on both . (Read ModuleInitTools for an important caveat!)  
+[NVIDIA drivers|http://www.nvidia.com/linux] version 1. -6106 and up support all 2.4 and 2 .6 kernels, including kernels with the new 2 .6 option for 4k stacks.  
  
-__Important:__ module-init-tools no longer reads modules.conf and instead uses a new file called modprobe.conf(5) which has a different syntax. 'man 5 modprobe.conf' will be your friend here. It's possible to set modprobe.conf to handle modules for both 2.4.x and 2.5.x kernels, which is pretty cool if you're a dualbooter.  
+!! Other Misc 2.6 Notes  
  
-Also you may notice that the extension of modules has changed from .o to .ko, for kernel object.  
-  
-  
-  
-!!Kernel 2.6 on Debian Woody  
-  
-Add the following lines to your apt/sources.conf:  
-  
-  
-Either do apt-get install kernel-image-2.6 and pick an appropriate image from the list available (ie , kernel-image-2.6-686) or download, compile and install a kernel yourself.  
-  
-Update your bootloader, and it should just work.  
-  
-As mentioned above you need at least a new version of module-init-tools - you will need to use backports to get updated  
-versions of some important packages. Add the following two lines to your apt sources.list:  
- <verbatim >  
- # kernel 2.6 and related things  
- deb http: //www.backports.org /debian woody kernel -2.6  
- deb http: //www .backports.org/debian woody module-init-tools  
- </verbatim >  
-do an apt-get dist-update ; apt-get dist-upgrade  
-make sure that module-init-tools is installed  
-and install/update module-init-tools, modutils (if you want to dual-boot with a 2.4 kernel), hdparm, and procinfo.  
-  
-! dhcp server  
-If you install 2.6 on a machine running a dhcp server, then the default woody startup script won't work.  
-The "dhcp", version "2.0pl5-11" has two separate binaries, one for 2.0 kernels and one for later kernels.  
-Unfortunately, the /usr/sbin/dhcpd shell script tests if your kernel version is either 2 ., or 2.x (where "x"  
-is between 1 and 5, inclusive). Edit the shell script and add a " 6" to the part that says ~[12345].  
-  
-(This is an incredibly helpful hint. As far as I know , this is the only place its documented, and it's pretty  
-damn important -AS)  
-  
-! dhcp client  
-The dhcp client startup script looks to suffer from the same problem. Edit the shell script /sbin/dhclient and make the same changes - add a "6" to the part that says ~[12345].  
-  
-!!Nvidia and 2.6 notes  
-  
-[NVIDIA drivers|http://www.nvidia.com/linux] version 1.-6106 and up support all 2.4 and 2.6 kernels, including kernels with the new 2.6 option for 4k stacks
+In the 2.4 series , you could read <tt >/usr /src /linux -''version'' /Documentation /Configure .help </tt > to see all the help for the entries you'd see in <tt>make ''foo''config< /tt> . In 2.6, this has moved to individual <tt>Kconfig< /tt> files in each sub -directory of the source tree
  
-!!Other Misc 2.6 Notes  
-In the 2.4 series, you could read /usr/src/linux-<version>/Documentation/Configure.help  
-to see all the help for the entries you'd see in make *config.  
+!!! See also  
  
-In 2.6, this has moved to individual "Kconfig" files in each sub-directory of the  
-source tree
+* TroubleshootingStartUp has help for some problems while booting kernels  
+* KernelTweaking  
+* [Safe remote kernel install howto | http://groups.google.com/group/fa.linux .kernel/msg/75497a47b0dd2b6b] describes a strategy for testing a new kernel on a remote machine without shutting yourself out even if it doesn't work  
  
-----  
-See TroubleshootingStartUp for some problems while booting kernels. %%%  
-See KernelTweaking for tuning hints.  
 ---- 
 CategoryKernel