* Don't use /hostfs to signal the test driver that a VM is up, but

write some magic string to ttyS0.  This removes the dependency on
  having a CIFS mount.
* Use a thread to process the stdout/stderr of each QEMU instance.
* Add a kernel command line parameter "stage1panic" to tell stage 1 to
  panic if an error occurs.  This is faster than waiting until
  connect() times out.

svn path=/nixos/trunk/; revision=19212
This commit is contained in:
Eelco Dolstra
2010-01-04 18:04:57 +00:00
parent 5730c27aed
commit 170331be30
3 changed files with 40 additions and 15 deletions

View File

@@ -14,9 +14,8 @@ with pkgs.lib;
preStart =
''
eval $(cat /proc/cmdline)
echo "guest running, will write in $hostTmpDir on host" > /dev/ttyS0
touch /hostfs/$hostTmpDir/running
echo "guest running" > /dev/ttyS0
echo "===UP===" > dev/ttyS0
'';
exec = "${pkgs.socat}/bin/socat tcp-listen:514,fork exec:/bin/sh,stderr";
@@ -45,6 +44,10 @@ with pkgs.lib;
# If the kernel has been built with coverage instrumentation, make
# it available under /proc/gcov.
boot.kernelModules = [ "gcov-proc" ];
# Panic if an error occurs in stage 1 (rather than waiting for
# user intervention).
boot.kernelParams = [ "stage1panic" ];
};