How to test Kernel (*-sources)

In the past, a lot of people ask me how test a new kernel. This tip could help new arch tester.

First, emerge the new sources ( 3.4.5 is just an example, replace it with your ${version} ):
echo "=sys-kernel/gentoo-sources-3.4.5" >> /etc/portage/package.keywords
emerge -av =sys-kernel/gentoo-sources-3.4.5

Now go to kernel directory, try to enable all modules and check if them compile:
cd /usr/src/linux
make allyesconfig
make # don't forget to add '-j'

Might seem strange, but in the past, with allyesconfig, I found bug like this, not reproducible with normal config.

The next step is clean the past build and make your custom kernel.
make distclean
make menuconfig
make modules_install # if you use modules

Now try to boot with new kernel, and check if there are not bad message with:

Now, try to reach a bit of uptime and if all is ok, please give a feedback.

This is a base guide to test {vanilla,gentoo}-sources. If you are testing a kernel with other/special features ( e.g. hardened/zen/tuxonice ), make sure that these features work perfectly.

This entry was posted in arch testing, gentoo. Bookmark the permalink.

8 Responses to How to test Kernel (*-sources)

  1. Loux says:

    where should i give a feedback ?
    Running 3.4.5 from the times it’s on the tree without troubles.
    PS : Netbook ASUS M51Sn

  2. ago says:

    3.4.5 is just an example. You should give a feedback on our bugzilla when there will be the stablereq for the kernel.

  3. Toralf Förster says:

    Probably you meant “make allmodconfig” instead of “make allyesconfig” ?

  4. opotonil says:

    Interesting post, thanks.

    I have translated it to spanish on my blog:

    If you want I retire it of my blog, you let me know and I will do it.

  5. genkerneluser says:

    Great, thanks! Can you explain how I can use this together with genkernel? E.g. in your instructions, after the step “make distclean”, can I simply run genkernel after that line instead of the “make menuconfig” etc.?
    Also, what does “don’t forget to add -j” mean? Do I write “make -j” ?
    Finally, on my machine I can’t get a bug report after a kernel crash or freeze (because the hard disk is encrypted and there are no other available monitoring devices). Can I still contribute something useful? Do you need only the bug reports of the “failures” or oddities, or is it useful to report also that a kernel appears to be working?

    • ago says:

      Yes, run genkernel as usual.

      -j is useful when you have a multicore machine (man make)

      This guide is addressed for arch problem if you can’t contribute 😉


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.