qemu: do not try to stop qemu multiple times

We've cleaned it up the first time. Future stop will
only fail.

Fixes: #1958
Signed-off-by: Peng Tao <bergwolf@hyper.sh>
This commit is contained in:
Peng Tao 2019-08-06 15:57:39 +08:00
parent 9ea469bcfa
commit b58ab66f05

View File

@ -93,6 +93,8 @@ type qemu struct {
ctx context.Context
nvdimmCount int
stopped bool
}
const (
@ -835,8 +837,16 @@ func (q *qemu) stopSandbox() error {
span, _ := q.trace("stopSandbox")
defer span.Finish()
defer q.cleanupVM()
q.Logger().Info("Stopping Sandbox")
if q.stopped {
q.Logger().Info("Already stopped")
return nil
}
defer func() {
q.cleanupVM()
q.stopped = true
}()
err := q.qmpSetup()
if err != nil {