From fb286837bb3ef2a31c1f2b5c0da1f8463cdccafa Mon Sep 17 00:00:00 2001 From: Pragmatic Software Date: Sat, 17 Jan 2015 04:59:14 -0800 Subject: [PATCH] Clean up compiler_vm directory a bit --- modules/compiler_vm/compiler_output_merger.pl | 93 ------------------- modules/compiler_vm/{ => misc}/monitor | 0 modules/compiler_vm/{ => misc}/mount_edit | 0 modules/compiler_vm/{ => misc}/prelude.h | 0 modules/compiler_vm/{ => misc}/runqemu | 0 modules/compiler_vm/{ => misc}/runqemu.net | 0 modules/compiler_vm/{ => misc}/serial | 0 modules/compiler_vm/{ => misc}/umount_edit | 0 8 files changed, 93 deletions(-) delete mode 100755 modules/compiler_vm/compiler_output_merger.pl rename modules/compiler_vm/{ => misc}/monitor (100%) rename modules/compiler_vm/{ => misc}/mount_edit (100%) rename modules/compiler_vm/{ => misc}/prelude.h (100%) rename modules/compiler_vm/{ => misc}/runqemu (100%) rename modules/compiler_vm/{ => misc}/runqemu.net (100%) rename modules/compiler_vm/{ => misc}/serial (100%) rename modules/compiler_vm/{ => misc}/umount_edit (100%) diff --git a/modules/compiler_vm/compiler_output_merger.pl b/modules/compiler_vm/compiler_output_merger.pl deleted file mode 100755 index 6e8559c5..00000000 --- a/modules/compiler_vm/compiler_output_merger.pl +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/perl - -use warnings; -use strict; - -use IPC::Open2; -use Fcntl qw/:flock/; -use POSIX ":sys_wait_h"; -use Linux::Pid qw/getppid/; - -my $outfile = '.output'; - -sub write_output { - my ($msg) = @_; - - print "output: writing [$msg]\n"; - - open my $fh, '>>', $outfile; - flock $fh, LOCK_EX; - print $fh "$msg\n"; - print "output: wrote [$msg]\n"; - close $fh; -} - -sub merge_file { - my ($file, $pid) = @_; - - # create empty file - open my $fh, '>', $file; - close $fh; - - my ($out, $in); - open2 $out, $in, "tail -q -F $file --pid=$pid"; - print "merging $file to $outfile\n"; - while(my $line = <$out>) { - chomp $line; - if(getppid == 1) { - print "$file: Parent died, exiting\n"; - exit; - } - print "$file: got [$line]\n"; - write_output $line; - } -} - -sub merge { - my ($file) = @_; - - my $pid = fork; - die "fork failed: $!" if not defined $pid; - - if($pid == 0) { - print "$file pid: $$\n"; - while(1) { - merge_file $file, $$; - print "merge $file killed, restarting...\n"; - } - exit; - } else { - return $pid; - } -} - -my ($gdb_pid, $prog_pid); - -sub merge_outputs { - $gdb_pid = merge '.gdb_output'; - $prog_pid = merge '.prog_output'; - - print "merge_outputs: gdb_pid: $gdb_pid; prog_pid: $prog_pid\n"; - - while(1) { - sleep 1; - } -} - -$SIG{CHLD} = \&REAPER; -sub REAPER { - my $stiff; - while (($stiff = waitpid(-1, &WNOHANG)) > 0) { - print "child died: $stiff\n"; - print "reaper: gdb_pid: $gdb_pid; prog_pid: $prog_pid\n"; - - if($stiff == $gdb_pid) { - $gdb_pid = merge '.gdb_output'; - } elsif($stiff == $prog_pid) { - $prog_pid = merge '.prog_output'; - } - } - $SIG{CHLD} = \&REAPER; -} - -merge_outputs; diff --git a/modules/compiler_vm/monitor b/modules/compiler_vm/misc/monitor similarity index 100% rename from modules/compiler_vm/monitor rename to modules/compiler_vm/misc/monitor diff --git a/modules/compiler_vm/mount_edit b/modules/compiler_vm/misc/mount_edit similarity index 100% rename from modules/compiler_vm/mount_edit rename to modules/compiler_vm/misc/mount_edit diff --git a/modules/compiler_vm/prelude.h b/modules/compiler_vm/misc/prelude.h similarity index 100% rename from modules/compiler_vm/prelude.h rename to modules/compiler_vm/misc/prelude.h diff --git a/modules/compiler_vm/runqemu b/modules/compiler_vm/misc/runqemu similarity index 100% rename from modules/compiler_vm/runqemu rename to modules/compiler_vm/misc/runqemu diff --git a/modules/compiler_vm/runqemu.net b/modules/compiler_vm/misc/runqemu.net similarity index 100% rename from modules/compiler_vm/runqemu.net rename to modules/compiler_vm/misc/runqemu.net diff --git a/modules/compiler_vm/serial b/modules/compiler_vm/misc/serial similarity index 100% rename from modules/compiler_vm/serial rename to modules/compiler_vm/misc/serial diff --git a/modules/compiler_vm/umount_edit b/modules/compiler_vm/misc/umount_edit similarity index 100% rename from modules/compiler_vm/umount_edit rename to modules/compiler_vm/misc/umount_edit