1import ./make-test-python.nix (
2 { lib, pkgs, ... }:
3 {
4 name = "systemd-initrd-modprobe";
5
6 nodes.machine =
7 { pkgs, ... }:
8 {
9 testing.initrdBackdoor = true;
10 boot.initrd.systemd.enable = true;
11 boot.initrd.kernelModules = [ "tcp_hybla" ]; # Load module in initrd.
12 boot.extraModprobeConfig = ''
13 options tcp_hybla rtt0=42
14 '';
15 };
16
17 testScript = ''
18 machine.wait_for_unit("initrd.target")
19 rtt = machine.succeed("cat /sys/module/tcp_hybla/parameters/rtt0")
20 assert int(rtt) == 42, "Parameter should be respected for initrd kernel modules"
21
22 # Make sure it sticks in stage 2
23 machine.switch_root()
24 machine.wait_for_unit("multi-user.target")
25 rtt = machine.succeed("cat /sys/module/tcp_hybla/parameters/rtt0")
26 assert int(rtt) == 42, "Parameter should be respected for initrd kernel modules"
27 '';
28 }
29)