Patent ID: 9104459
Filing Date: 2015-08-11
Classification: G06F

Abstract:
1. A method, comprising: identifying, by a hypervisor of a source host machine, a memory location associated with a peripheral device to a write tracking module, wherein the peripheral device is solely-controlled by a virtual machine (VM) that is managed by the hypervisor, the peripheral device solely-controlled by the VM via a driver that is specific to the peripheral device loaded in the VM, wherein the hypervisor does not emulate the peripheral device for the VM, does not control the peripheral device, and is not aware of changes made by the peripheral device to memory of the VM and to state of the VM; receiving, by the hypervisor, notification from the write tracking module that the identified memory location has been modified by the peripheral device; and marking, by the hypervisor in response to receiving the notification, a memory page of the identified memory location as dirty in order for the migration of the memory page to be repeated as part of a migration process of the VM from the source host machine to a destination host machine; wherein receiving notification that the identified memory location has been modified further comprises the write tracking providing the notification to the hypervisor each time a direct memory access (DMA) write that targets the identified memory location has been completed; and wherein the hypervisor retrieves information regarding the DMA write to the identified memory location from one or more registers of the peripheral device in response to receiving the notification from the write tracking module.