Index: usr.sbin/bhyve/pci_ahci.c =================================================================== --- usr.sbin/bhyve/pci_ahci.c +++ usr.sbin/bhyve/pci_ahci.c @@ -521,6 +521,7 @@ /* * Move the blockif request back to the free list */ + aior->cfis = NULL; STAILQ_INSERT_TAIL(&p->iofhd, aior, io_flist); } @@ -1928,6 +1929,7 @@ /* * Move the blockif request back to the free list */ + aior->cfis = NULL; STAILQ_INSERT_TAIL(&p->iofhd, aior, io_flist); if (!err) @@ -1992,6 +1994,7 @@ /* * Move the blockif request back to the free list */ + aior->cfis = NULL; STAILQ_INSERT_TAIL(&p->iofhd, aior, io_flist); if (!err) @@ -2722,7 +2725,7 @@ ioreq->slot * AHCI_CL_SIZE); SNAPSHOT_GUEST2HOST_ADDR_OR_LEAVE(ioreq->cfis, 0x80 + hdr->prdtl * sizeof(struct ahci_prdt_entry), - false, meta, ret, done); + true, meta, ret, done); SNAPSHOT_VAR_OR_LEAVE(ioreq->len, meta, ret, done); SNAPSHOT_VAR_OR_LEAVE(ioreq->done, meta, ret, done); Index: usr.sbin/bhyve/snapshot.c =================================================================== --- usr.sbin/bhyve/snapshot.c +++ usr.sbin/bhyve/snapshot.c @@ -153,8 +153,8 @@ { "xhci", pci_snapshot, NULL, NULL }, { "e1000", pci_snapshot, NULL, NULL }, { "ahci", pci_snapshot, pci_pause, pci_resume }, - { "ahci-hd", pci_snapshot, pci_pause, pci_resume }, - { "ahci-cd", pci_snapshot, NULL, NULL }, + { "ahci-hd", pci_snapshot, pci_pause, pci_resume }, + { "ahci-cd", pci_snapshot, pci_pause, pci_resume }, }; const struct vm_snapshot_kern_info snapshot_kern_structs[] = {