Kernel 3.2.2 and Bridging

really not the best error message for a missing kernel feature.

linux 3.2.2 and iptables

as the last posts show I’m compiling and configuring my own kernel. As I want iptables to work, I opened my .config and enabled all flags under “IP: Netfilter Configuration” by changing the comment from “#… is not set” to “…=y”. Then I answered all questions as needed during the next compilation leaving the most question on the default value.

make xconfig

for using make xconfig to configure your kernel, you need to install the following packages:

qt4-qmake
libqt4-dev

make gconfig

for configuring your kernel with make gconfig, you need to install the following packages:

libgtk.2.0-0
libgtk2.0-dev
libglade2-0
libglade2-dev
glib2.0-0
libglib2.0-de

make menuconfig

if you want to make changes to your kernel configuration under ubuntu 11.10 you have to install libncurses5-dev to be able to run make menuconfig.

Realtek 8168 with kernel 3.2.*

Since kernel version 3.2 my network driver doesn’t compile anymore. I downloaded the latest version from Realtek and made the following change in r8168_n.c:

to

After this change the driver compiled and worked again.

 

Custom Kernel

To compile your own kernel you can follow these steps

modprobe self compiled modules

I have the problem, that ubuntu uses the wrong driver for my ethernet card, so I have to use a self compiled driver. After compiling the driver I got a file r8168.ko that is automatically copied to /lib/modules/uname -r/kernel/drivers/net/. So far so good. The problem is, that the module is not found by modprobe. Therefore insert the appropriate path (kernel/drivers/net/r8168.ko) into /lib/modules/uname -r/modules.dep and /lib/modules/uname -r/modules.order. Make sure not to forget the colon in modules.dep. Then run depmod -a to make modprobe r8168 work.