From: Lucas De Marchi <lucas.demarchi@xxxxxxxxx> Currently we fail to add the module option if the parameter doesn't have a value. --- .../module-param-kcmdline/correct.txt | 1 + .../4.4.4/kernel/drivers/input/mouse/psmouse.ko | Bin 0 -> 95649 bytes .../lib/modules/4.4.4/modules.alias | 3 +++ .../lib/modules/4.4.4/modules.alias.bin | Bin 0 -> 101 bytes .../lib/modules/4.4.4/modules.builtin.bin | 0 .../lib/modules/4.4.4/modules.dep | 1 + .../lib/modules/4.4.4/modules.dep.bin | Bin 0 -> 72 bytes .../lib/modules/4.4.4/modules.devname | 1 + .../lib/modules/4.4.4/modules.softdep | 2 ++ .../lib/modules/4.4.4/modules.symbols | 1 + .../lib/modules/4.4.4/modules.symbols.bin | Bin 0 -> 12 bytes .../module-param-kcmdline/proc/cmdline | 1 + .../module-param-kcmdline/proc/modules | 0 testsuite/test-modprobe.c | 23 +++++++++++++++++++++ 14 files changed, 33 insertions(+) create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/correct.txt create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/kernel/drivers/input/mouse/psmouse.ko create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.alias create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.alias.bin create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.builtin.bin create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.dep create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.dep.bin create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.devname create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.softdep create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.symbols create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.symbols.bin create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/proc/cmdline create mode 100644 testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/proc/modules diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/correct.txt b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/correct.txt new file mode 100644 index 0000000..cea9626 --- /dev/null +++ b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/correct.txt @@ -0,0 +1 @@ +insmod /lib/modules/4.4.4/kernel/drivers/input/mouse/psmouse.ko foo bar=1 diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/kernel/drivers/input/mouse/psmouse.ko b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/kernel/drivers/input/mouse/psmouse.ko new file mode 100644 index 0000000000000000000000000000000000000000..4eac2a3da3230435e7b21074f2a2681648cafc5e GIT binary patch literal 95649 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 Z*FWGjy0lT#DAQSpA#k&h)+l)E{{jSM|IGjZ literal 0 HcmV?d00001 diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.alias b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.alias new file mode 100644 index 0000000..a4e7677 --- /dev/null +++ b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.alias @@ -0,0 +1,3 @@ +# Aliases extracted from modules themselves. +alias serio:ty05pr*id*ex* psmouse +alias serio:ty01pr*id*ex* psmouse diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.alias.bin b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.alias.bin new file mode 100644 index 0000000000000000000000000000000000000000..0b13537105c401379bc57d7871cd3486d3e7cd1a GIT binary patch literal 101 zcmdnM{w17&iGfjpfg!%2NGmf%E44z40SFjDL_u+Gera(k18$krqRf1&l1c*xL(>Bc U3_KuBFmQl@L9MuW0Rw{r0F!PNmjD0& literal 0 HcmV?d00001 diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.builtin.bin b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.builtin.bin new file mode 100644 index 0000000..e69de29 diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.dep b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.dep new file mode 100644 index 0000000..7ba5711 --- /dev/null +++ b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.dep @@ -0,0 +1 @@ +kernel/drivers/input/mouse/psmouse.ko: diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.dep.bin b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.dep.bin new file mode 100644 index 0000000000000000000000000000000000000000..bdd0eb5fb37bb470d36c28807569a458e5f866d9 GIT binary patch literal 72 zcmdnM{w17&iGfjpfx)RbH@~zvl>rDCK}2?HQC@0}eo9ehS!z+Ser8@lX^B2qiGBe@ Qsa|%z6+=P60R{#h0Mj28lmGw# literal 0 HcmV?d00001 diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.devname b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.devname new file mode 100644 index 0000000..58f6d6d --- /dev/null +++ b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.devname @@ -0,0 +1 @@ +# Device nodes to trigger on-demand module loading. diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.softdep b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.softdep new file mode 100644 index 0000000..3cc0512 --- /dev/null +++ b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.softdep @@ -0,0 +1,2 @@ +# Soft dependencies extracted from modules themselves. +# Copy, with a .conf extension, to /etc/modprobe.d to use it with modprobe. diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.symbols b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.symbols new file mode 100644 index 0000000..618c345 --- /dev/null +++ b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.symbols @@ -0,0 +1 @@ +# Aliases for symbols, used by symbol_request(). diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.symbols.bin b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/lib/modules/4.4.4/modules.symbols.bin new file mode 100644 index 0000000000000000000000000000000000000000..7075435f6268c4d815aec093d61e26647666ba76 GIT binary patch literal 12 TcmdnM{w17&iGh)Ufq@4A6;A>Z literal 0 HcmV?d00001 diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/proc/cmdline b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/proc/cmdline new file mode 100644 index 0000000..31126a9 --- /dev/null +++ b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/proc/cmdline @@ -0,0 +1 @@ +initrd=\initramfs-linux.img psmouse.foo psmouse.bar=1 root=/dev/sda2 rootfstype=ext4 add_efi_memmap quiet rw diff --git a/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/proc/modules b/testsuite/rootfs-pristine/test-modprobe/module-param-kcmdline/proc/modules new file mode 100644 index 0000000..e69de29 diff --git a/testsuite/test-modprobe.c b/testsuite/test-modprobe.c index cc90dae..f0131e3 100644 --- a/testsuite/test-modprobe.c +++ b/testsuite/test-modprobe.c @@ -158,6 +158,28 @@ static DEFINE_TEST(modprobe_install_cmd_loop, }, ); +static __noreturn int modprobe_param_kcmdline(const struct test *t) +{ + const char *progname = ABS_TOP_BUILDDIR "/tools/modprobe"; + const char *const args[] = { + progname, + "--show-depends", "psmouse", + NULL, + }; + + test_spawn_prog(progname, args); + exit(EXIT_FAILURE); +} +static DEFINE_TEST(modprobe_param_kcmdline, + .description = "check if params are parsed correctly from kcmdline", + .config = { + [TC_UNAME_R] = "4.4.4", + [TC_ROOTFS] = TESTSUITE_ROOTFS "test-modprobe/module-param-kcmdline", + }, + .output = { + .stdout = TESTSUITE_ROOTFS "test-modprobe/module-param-kcmdline/correct.txt", + }); + static const struct test *tests[] = { &smodprobe_show_depends, @@ -166,6 +188,7 @@ static const struct test *tests[] = { &smodprobe_builtin, &smodprobe_softdep_loop, &smodprobe_install_cmd_loop, + &smodprobe_param_kcmdline, NULL, }; -- 1.8.3.4 -- To unsubscribe from this list: send the line "unsubscribe linux-modules" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html