Are there automatic solutions to disable unused Linux kernel parts (in particular unused modules) before compilation to fasten compilation?

A daemon, that logs used kernel functions (or modules) at runtime and disables unused functions afterwards in the .config, so more dynamic information gathering than make localmodconfig would be cool.

Another problem with localmodconfig are removable devices. Modules which are only loaded from time to time are not taken into account by this solution.

  • Why do you ask? What is the use case? On most distributions, there is initrd and a lot of kernel modules, and you can set up your system to load a minimal amount of kernel modules. Jul 18, 2015 at 13:31
  • Compiling would be much faster. Jul 18, 2015 at 13:32
  • Then you just have to configure your own kernel to remove the modules you don't use (so answer N instead of M) Jul 18, 2015 at 13:32
  • Yes, I know. That's the question for. Is there an automatic (!) solution for this task? Jul 18, 2015 at 13:43
  • No you are asking about kernel functions I was talking about kernel modules, this is not the same. So at least edit the title & the question. And not compiling a module won't change much the kernel (non-modules) size, it will just make the build not compile that module, hence reduce the build time, not the kernel's size. Jul 18, 2015 at 13:49


You must log in to answer this question.

Browse other questions tagged .