If there are no serial ports in the computer on which new kernels are going to be tested, you will need to use some other means of collecting kernel messages, such as the network console.
Of course, for the network console to work an additional computer is necessary, on which the messages will appear. Moreover, this computer should be connected to the same Ethernet LAN as your test bed machine (unfortunately, as of today Ethernet is the only type of network that the network console can be used with), which may be regarded as a drawback. Another drawback of the network console is that it will not work before the networking has been initialized on the test bed system, so it cannot be used for transmitting some early kernel messages. In turn, an undoubted advantage of it is that the distance between the test bed computer and the machine used for collecting images may be relatively large (at least in comparison with the serial console).
To make the tested kernel support the network console, you need configure it appropriately
Device Drivers ---> Network device support ---> <*> Network console logging support (EXPERIMENTAL)(for more information about the configuration of the kernel see Section 1.6). Next, to tell it that you want it to send the messages over the network, you can append the
netconsole= parameter to
its command line, eg.
netconsole=4444@192.168.100.1/eth0,6666@192.168.100.2/00:14:38:C3:3F:C4where the first three settings are related to the test bed system, namely
4444 is the number of the UDP port,
192.168.100.1 is the IP address of the network interface
(obviously, it has to correspond to an Ethernet card),
eth0 is the name of the the network interface,
6666 is the number of the UDP port,
192.168.100.2 is the IP address of the network interface,
00:14:38:C3:3F:C4 is the MAC (ie. Ethernet hardware) address of
the network card,
The computer that will be used for collecting messages from the tested kernel
need not be configured in any special way, except that it should be running a
program that will receive the messages and save them or print them on the
screen. For this purpose you can use the netcat utility
(http://netcat.sourceforge.net/), for example in the following way:
$ netcat -u -l -p 6666where the port number (
6666 in this example) has to be the one that
you have provided to the tested kernel.
It is worthy of noting that the network console driver can be built as a module
and loaded at run time, but we are not going to cover this case. More
information about that can be found in the file
Documentation/networking/netconsole.txt included in the kernel sources.