support/testing: test_systemd.py: add linux fragment to enable CONFIG_BINFMT_MISC
authorRomain Naour <romain.naour@smile.fr>
Sun, 1 Mar 2020 16:26:47 +0000 (17:26 +0100)
committerYann E. MORIN <yann.morin.1998@free.fr>
Sun, 1 Mar 2020 17:43:42 +0000 (18:43 +0100)
While investigating [1] one units failed due to missing kernel option
CONFIG_BINFMT_MISC needed by "proc-sys-fs-binfmt_misc.mount" service.

It's because the kernel support autofs4 but not MISC binaries.

Since the systemd test infra use the default defconfig (vexpress),
we need to provide a linux fragment to enable CONFIG_BINFMT_MISC.

[1] https://gitlab.com/buildroot.org/buildroot/-/jobs/454255917

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Cc: Yann E. MORIN <yann.morin.1998@free.fr>
[yann.morin.1998@free.fr:
  - move the kernel config with the others in conf/
]
Tested-by: Yann E. MORIN <yann.morin.1998@free.fr>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
support/testing/conf/binfmt-misc-kernel-fragment.config [new file with mode: 0644]
support/testing/tests/init/test_systemd.py

diff --git a/support/testing/conf/binfmt-misc-kernel-fragment.config b/support/testing/conf/binfmt-misc-kernel-fragment.config
new file mode 100644 (file)
index 0000000..7c992ff
--- /dev/null
@@ -0,0 +1,2 @@
+# Needed for binfmt_misc service: "Arbitrary Executable File Formats File System"
+CONFIG_BINFMT_MISC=y
index a324ba85693b581fc2f1861d970aa4b9c8a92e54..0ac18cb623f499c02bb3893305712c5633ed4f83 100644 (file)
@@ -13,10 +13,11 @@ class InitSystemSystemdBase(InitSystemBase):
         BR2_LINUX_KERNEL_CUSTOM_VERSION=y
         BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.11.3"
         BR2_LINUX_KERNEL_DEFCONFIG="vexpress"
+        BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="{}"
         BR2_LINUX_KERNEL_DTS_SUPPORT=y
         BR2_LINUX_KERNEL_INTREE_DTS_NAME="vexpress-v2p-ca9"
         # BR2_TARGET_ROOTFS_TAR is not set
-        """
+        """.format(infra.filepath("conf/binfmt-misc-kernel-fragment.config"))
 
     def check_init(self):
         super(InitSystemSystemdBase, self).check_init("/lib/systemd/systemd")