OS-7424: bhyve: keep a list of deferred-destroyed VMs

Details

Issue Type:Bug
Priority:4 - Normal
Status:Resolved
Created at:2018-12-05T16:56:35.546Z
Updated at:2019-02-13T23:33:20.164Z

People

Created by:Hans Rosenfeld [X]
Reported by:Hans Rosenfeld [X]
Assigned to:Hans Rosenfeld [X]

Resolution

Fixed: A fix for this issue is checked into the tree and tested.
(Resolution Date: 2019-02-13T23:33:20.151Z)

Fix Versions

2019-02-14 Liz Lemon (Release Date: 2019-02-14)

Related Links

Description

To ease debugging it would be nice to keep VMs in VMM_DESTROY state on a list separate from vmmdev_list so they can be found easily.

Comments

Comment by Hans Rosenfeld [X]
Created at 2019-02-08T17:37:33.710Z

Testing: I kept mdb attached to a VM and then shut it down. Inspecting vmm_destroy_list with mdb -k reveals that there is one VM on the destroy list, which is the one mdb is still attached to. After stopping and exiting mdb the VM is destroyed, and as expected the destroy list is empty.

> vmm_destroy_list::print -ta
ffffffffc014f080 list_t {
    ffffffffc014f080 size_t list_size = 0xb0
    ffffffffc014f088 size_t list_offset = 0
    ffffffffc014f090 struct list_node list_head = {
        ffffffffc014f090 struct list_node *list_next = 0xfffffeb386d3b700
        ffffffffc014f098 struct list_node *list_prev = 0xfffffeb386d3b700
    }
}
> vmm_destroy_list::print -ta
ffffffffc014f080 list_t {
    ffffffffc014f080 size_t list_size = 0xb0
    ffffffffc014f088 size_t list_offset = 0
    ffffffffc014f090 struct list_node list_head = {
        ffffffffc014f090 struct list_node *list_next = vmm_destroy_list+0x10
        ffffffffc014f098 struct list_node *list_prev = vmm_destroy_list+0x10
    }
}

Comment by Jira Bot
Created at 2019-02-13T23:32:38.347Z

illumos-joyent commit 0dffce43ebed3eede3daefae50319a3731a68e6d (branch master, by Hans Rosenfeld)

OS-7424 bhyve: keep a list of deferred-destroyed VMs
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Reviewed by: John Levon <john.levon@joyent.com>
Approved by: Patrick Mooney <patrick.mooney@joyent.com>