NixOS tests: Increase hung_task_timeout_secs

This hopefully fixes intermittent test failures like

  http://hydra.nixos.org/build/29962437

  router# [  240.128835] INFO: task mke2fs:99 blocked for more than 120 seconds.
  router# [  240.130135]       Not tainted 3.18.25 #1-NixOS
  router# [  240.131110] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.

assuming that these are caused by high load on the host.
This commit is contained in:
Eelco Dolstra 2016-01-04 16:53:42 +01:00
parent 517d8c8846
commit 6d02d7e740
3 changed files with 16 additions and 1 deletions

View file

@ -140,6 +140,7 @@ done
# Create device nodes in /dev. # Create device nodes in /dev.
@preDeviceCommands@
echo "running udev..." echo "running udev..."
mkdir -p /etc/udev mkdir -p /etc/udev
ln -sfn @udevRules@ /etc/udev/rules.d ln -sfn @udevRules@ /etc/udev/rules.d

View file

@ -203,7 +203,7 @@ let
inherit (config.boot) resumeDevice devSize runSize; inherit (config.boot) resumeDevice devSize runSize;
inherit (config.boot.initrd) checkJournalingFS inherit (config.boot.initrd) checkJournalingFS
postEarlyDeviceCommands preLVMCommands postDeviceCommands postMountCommands kernelModules; preLVMCommands preDeviceCommands postEarlyDeviceCommands postDeviceCommands postMountCommands kernelModules;
resumeDevices = map (sd: if sd ? device then sd.device else "/dev/disk/by-label/${sd.label}") resumeDevices = map (sd: if sd ? device then sd.device else "/dev/disk/by-label/${sd.label}")
(filter (sd: (sd ? label || hasPrefix "/dev/" sd.device) && !sd.randomEncryption) config.swapDevices); (filter (sd: (sd ? label || hasPrefix "/dev/" sd.device) && !sd.randomEncryption) config.swapDevices);
@ -303,6 +303,15 @@ in
''; '';
}; };
boot.initrd.preDeviceCommands = mkOption {
default = "";
type = types.lines;
description = ''
Shell commands to be executed before udev is started to create
device nodes.
'';
};
boot.initrd.postDeviceCommands = mkOption { boot.initrd.postDeviceCommands = mkOption {
default = ""; default = "";
type = types.lines; type = types.lines;

View file

@ -43,6 +43,11 @@ let kernel = config.boot.kernelPackages.kernel; in
# into thinking they're running interactively. # into thinking they're running interactively.
environment.variables.PAGER = ""; environment.variables.PAGER = "";
boot.initrd.preDeviceCommands =
''
echo 600 > /proc/sys/kernel/hung_task_timeout_secs
'';
boot.initrd.postDeviceCommands = boot.initrd.postDeviceCommands =
'' ''
# Using acpi_pm as a clock source causes the guest clock to # Using acpi_pm as a clock source causes the guest clock to