fi
}
+# Get guest PID
+function kvmx_pid {
+ if [ -e "$PIDFILE" ]; then
+ # QEMU might put weird things into pidfile, so we need a simple filter
+ #cat $PIDFILE
+ cut -d ' ' -f 1 $PIDFILE | head -1
+ else
+ return 1
+ fi
+}
+
# Suspend the virtual machine
function kvmx_suspend {
if ! kvmx_running; then
exit 1
fi
- PID="`cat $PIDFILE`"
+ PID="`kvmx_pid`"
+
+ if [ -z "$PID" ]; then
+ return 1
+ fi
+
kill -STOP $PID
# Alternative
return 1
fi
- PID="`cat $PIDFILE`"
+ PID="`kvmx_pid`"
if [ -z "$PID" ]; then
return 1
exit 1
fi
- PID="`cat $PIDFILE`"
+ PID="`kvmx_pid`"
+
+ if [ -z "$PID" ]; then
+ return 1
+ fi
+
kill -CONT $PID
# Alternative
# Stop a guest
function kvmx_stop {
if kvmx_running; then
- PID="`cat $PIDFILE`"
+ PID="`kvmx_pid`"
+
+ if [ -z "$PID" ]; then
+ return 1
+ fi
+
kill $PID
kvmx_xephyr_stop
fi
# Kill a guest
function kvmx_kill {
if kvmx_running; then
- PID="`cat $PIDFILE`"
+ PID="`kvmx_pid`"
+
+ if [ -z "$PID" ]; then
+ return 1
+ fi
+
kill -9 $PID
kvmx_xephyr_stop
fi
return
fi
- PID="`cat $PIDFILE`"
+ PID="`kvmx_pid`"
+
+ if [ -z "$PID" ]; then
+ return 1
+ fi
+
ps $PID
}