You are not logged in.

#1 2009-12-10 20:06:10

Tjh_
Member
From: Waterloo, Canada
Registered: 2009-11-28
Posts: 11
Website

Custom Kernel Compile Don'ts

I was reading this topic today--> http://bbs.archlinux.org/viewtopic.php?id=86497 and i saw this in one of the replies.

falconindy wrote:

Random aside: I learned something today. Don't build a kernel without SysV IPC messaging. Fakeroot (among other things I'm sure) gets really angry.

And that got me to thinking, i know a bunch of people here use custom kernels for whatever reason, myself included, so what are some of the "do not do this" type things you learned through experiance. Something that perhaps people who are new to this will not obviously know (e.g. the above post). Me first i guess:

One of the important things i learnt was way back when i built my first kernel, i unselected BLK_DEV_LOOP support. This is essentially support for the "lo" device that you may see when you run ifconfig. A lot of stuff needs the loopback device, its a easy way to connect back to you own computer (i think mpd for example uses the lo device to connect to a daemon on the same computer, cuz mpd stopped working). Suffice it to say a lot of things were angry when i did this.

Second thing is; if you're wondering "hmm should i put in support for <insert fs type here>", do it, its ussually not very big, and you never know when you might need it, it sucks to have to recompile cuz you decide to use your friends external HDD that uses reiser4 or something.

So what are the interesting DONTS you have learned?

-Tj

nb: 2.6.32 onwards comes with make locayesconfig and localmodconfig. This essentially looks at what modules you have running and other such system information and puts out a .config based on that. `yesconfig' compiles in all the stuff (including modules that you may have loaded right now, because it sees that as needed), `modconfig' selects the stuff that can be modules as modules, the latter seems to be a nicer route to go. This could pottentially avoid a lot of issues like the above. You should probably check your .config once over before compiling though.


ETA: spelling

Last edited by Tjh_ (2009-12-10 20:10:27)

Offline

#2 2009-12-10 20:13:15

tavianator
Member
From: Waterloo, ON, Canada
Registered: 2007-08-21
Posts: 859
Website

Re: Custom Kernel Compile Don'ts

I thought BLK_DEV_LOOP was the block loop device, not the lo network interface?

Offline

#3 2009-12-10 21:13:34

Tjh_
Member
From: Waterloo, Canada
Registered: 2009-11-28
Posts: 11
Website

Re: Custom Kernel Compile Don'ts

tavianator wrote:

I thought BLK_DEV_LOOP was the block loop device, not the lo network interface?

Aah, yes my mistake. The option i was talking about is actually CONFIG_INET. Which I had disabled since I was doing it for a computer that would not connect to any network. Sorry, I was just searching my historical config's for LOOP and found that and pasted it without confirmation.

If you actually read the help on that, it will tell you that it is actually needed even for a networkless computer for things (like X) that use a Server-Client model.

Another one I just saw while digging through my .config archive is the following: USB_STORAGE_DEBUG. This is probably the worst of them all. I saw that and enabled it cause I actually wanted to fix some issue i was having with my external. Its actually a lot worse than I thought. Lemme put it this way: I was backing up (for a re partition) and then putting back about 50 GB of stuff (really not much for today's standards). It took an hour or so for the whole thing, and at the end of that i had: "/var is full". I though, huh, thats odd it had 4 gB free a little while back. Yea thats right, that 50GB transfer back and forth wrote almost 4 Gigs worth of log files. I never before or since seen 4 gigs of text in one file...

-Tj
ETA: Typo

Last edited by Tjh_ (2009-12-10 21:15:10)

Offline

#4 2009-12-10 21:51:31

tomd123
Developer
Registered: 2008-08-12
Posts: 565

Re: Custom Kernel Compile Don'ts

One thing I learned was to have a backup kernel SEPERATE from the one you just compiled. -fallback is not a seperate backup!!! lol

Offline

Board footer

Powered by FluxBB