Search code examples
linuxkernelboot2docker

how to configure boot2docker kernel compilation to include snd_aloop support?


I need to run docker containers that depend on snd_aloop module. I have read that the module can be loaded inside the containers with modprobe if they are run in privileged mode.

In this context, I understand that the module needs to be available on the host.

I develop on MacOSX. Which implies running containers in boot2docker. As far as I can see, boot2docker does not come with snd_aloop module: I do not find kernel/sound/drivers/snd-aloop.ko in /lib/modules.

docker-machine makes it easy to use a custom boot2docker image. I have followed boot2docker build instructions.

The boot2docker build process uses kernel_config as a base for kernel compilation configuration make oldconfig. I have tried to add the following options in kernel_config:

CONFIG_SND=m
CONFIG_SND_ALOOP=m

before running make oldconfig. But without any success. The generated .config does not keep any pointers to CONFIG_SND*. And thus obviously does not compile support for snd_aloop.

What am I misunderstanding ?


Solution

  • Jean-François Roche hinted me: I figured out what is below.

    Instead of guessing configuration like

    CONFIG_SND=m
    

    I should have run make defconfig.

    Then check .config and find which config might be needed.

    I finally succeeded with, among others

    CONFIG_SOUND=y
    CONFIG_SOUND_OSS_CORE=y
    CONFIG_SOUND_OSS_CORE_PRECLAIM=y
    CONFIG_SND=y
    CONFIG_SND_DRIVERS=y
    CONFIG_SND_ALOOP=m