summaryrefslogtreecommitdiffstats
path: root/nixos/tests
diff options
context:
space:
mode:
authoraszlig <aszlig@nix.build>2018-03-13 21:42:50 +0100
committeraszlig <aszlig@nix.build>2018-03-13 22:00:56 +0100
commitba816ee08721d0c2f5f7e6652091bed085ac7687 (patch)
treecadc960d9407a3417a426df5549089f7c503944b /nixos/tests
parent1aaed1724406c1eb780201f5717b0533b346f07d (diff)
nixos/tests/virtualbox: Work around test failures
I've started digging into the actual cause of the problem a week ago but didn't continue fixing this. The reason why the tests are failing is because torvalds/linux/commit/72f5e08dbba2d01aa90b592cf76c378ea233b00b has remapped the location of the TSS into the CPU entry area and we did update our default kernel to version 4.14 in NixOS/nixpkgs@88530e02b6fa. Back to VirtualBox: The guru meditation happens in selmRCGuestTssPostWriteCheck, which I think is only a followup error. I believe the right location couldn't be determined by VirtualBox and thus the write check function triggers that panic because it's reading from the wrong location. So the actual problem *only* surfaces whenever we use software virtualization, which we do for our tests because we don't have nested virtualization available. Our tests are also for testing the functionality of VirtualBox itself and not certain kernel versions or kernel features, so for the time being and until this is fixed, let's actually use kernel version 4.9 for the guests within the VM tests. Kernel 4.9 didn't have the mentioned change of the TSS location and thus the tests succeed. Signed-off-by: aszlig <aszlig@nix.build> Cc: @dtzWill
Diffstat (limited to 'nixos/tests')
-rw-r--r--nixos/tests/virtualbox.nix3
1 files changed, 3 insertions, 0 deletions
diff --git a/nixos/tests/virtualbox.nix b/nixos/tests/virtualbox.nix
index 5574293ba377..249571fcedec 100644
--- a/nixos/tests/virtualbox.nix
+++ b/nixos/tests/virtualbox.nix
@@ -43,6 +43,9 @@ let
"init=${pkgs.writeScript "mini-init.sh" miniInit}"
];
+ # XXX: Remove this once TSS location detection has been fixed in VirtualBox
+ boot.kernelPackages = pkgs.linuxPackages_4_9;
+
fileSystems."/" = {
device = "vboxshare";
fsType = "vboxsf";