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@88530e02b6.

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
(cherry picked from commit ba816ee08721d0c2f5f7e6652091bed085ac7687)
release-18.03-flake
aszlig 2018-03-13 21:42:50 +01:00
parent 72fa68058e
commit b05df747cb
No known key found for this signature in database
GPG Key ID: 684089CE67EBB691
1 changed files with 3 additions and 0 deletions

View File

@ -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";