Patents by Inventor Michael S. Tsirkin

Michael S. Tsirkin has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20150193248
    Abstract: Methods, systems, and computer program products for non-blocking unidirectional multi-queue virtual machine migration are provided. A computer-implemented method may include maintaining information to track an association between a memory area in a virtual machine and a stream for a first stage of virtual machine migration, detecting one or more updates to the memory area during the first stage of migration, examining the information to identify the stream associated with the memory area for the first stage of migration, sending the updates to the memory area on the identified stream during the first stage of migration, modifying the information to associate the memory area with a new stream for a second stage of the migration, and sending updates to the memory area on the new stream during the second stage of migration.
    Type: Application
    Filed: January 6, 2014
    Publication date: July 9, 2015
    Applicant: Red Hat Israel, Ltd.
    Inventors: Karen Noel, Michael S. Tsirkin
  • Publication number: 20150193254
    Abstract: A method and system for providing a guest with virtual media that can be read by the guest. A hypervisor hosted by a computer system presents a guest-to-host channel to a guest in the computer system. The hypervisor receives content from the guest via the guest-to-host channel, the content to be stored and managed by the hypervisor in a memory area associated with the guest in the computer system, the memory area not being directly accessible to the guest. The hypervisor then receives a request from the guest indicating that the guest is to perform at least one operation on the content, and provides the content for the guest to perform the at least one operation.
    Type: Application
    Filed: March 16, 2015
    Publication date: July 9, 2015
    Inventors: Michael S. Tsirkin, Gleb Natapov
  • Patent number: 9003094
    Abstract: A computing apparatus determines that a virtual processor of a guest has been moved from a first physical processor of a host to a second physical processor of the host. The computing apparatus identifies a device that is controlled by the virtual processor, wherein device interrupts for the device are forwarded to the virtual processor. The computing apparatus updates at least one of the device or an interrupt controller to cause at least one of the device or the interrupt controller to send the device interrupts to the second physical processor of the host, wherein the second physical processor of the host forwards the device interrupts to the virtual processor running on the second physical processor without generating an inter-processor interrupt.
    Type: Grant
    Filed: August 30, 2011
    Date of Patent: April 7, 2015
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Avi Kivity
  • Patent number: 8990803
    Abstract: A method and system for providing a guest with virtual media that can be read by the guest with an emulated media drive. A hypervisor hosted by a computer system presents a guest-to-host channel to a guest in the computer system. The hypervisor receives content from the guest via the guest-to-host channel, and then receives a request from the guest indicating that the guest is to read the content. The hypervisor provides the content for the guest to read by emulating a media drive and an insertion of removable virtual media. The removable virtual media contains the content and is readable by the guest with the emulated media drive.
    Type: Grant
    Filed: May 31, 2011
    Date of Patent: March 24, 2015
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Gleb Natapov
  • Publication number: 20150046620
    Abstract: A computing apparatus identifies that a first processor of a host has forwarded information for a device to a second processor that controls the device. After identifying that the first processor has forwarded the information to the second processor and in response to determining that one or more update criteria have been satisfied, the computing apparatus causes future information for the device to be forwarded to the second processor.
    Type: Application
    Filed: October 27, 2014
    Publication date: February 12, 2015
    Inventors: Michael S. Tsirkin, Avi Kivity
  • Patent number: 8935693
    Abstract: A method and system for providing a descriptive name of a device in a virtual machine system. A computer system hosts a hypervisor, a management component and a guest. The hypervisor receives from the management component a descriptive name of a device available to the guest. The descriptive name defines at least one of the functionality of the device, the content of the device, or a user of the device. The hypervisor then passes the descriptive name to the guest via a host-to-guest channel, which is a shared storage location writable by the hypervisor and readable by the guest.
    Type: Grant
    Filed: May 31, 2011
    Date of Patent: January 13, 2015
    Assignee: Red Hat Israel, Ltd.
    Inventors: Gleb Natapov, Michael S. Tsirkin
  • Publication number: 20150007170
    Abstract: Systems and methods for providing a hypercall interface for virtual machines. An example method may comprise receiving, by a hypervisor executing on a computer system, a hypercall instruction issued by a virtual machine to invoke a hypervisor function; and determining an identifier of the hypervisor function based on a value of an instruction pointer of the virtual machine.
    Type: Application
    Filed: June 27, 2013
    Publication date: January 1, 2015
    Inventors: Michael S. Tsirkin, Gleb Natapov
  • Patent number: 8924965
    Abstract: A mechanism for memory change tracking during migration of a virtual machine (VM) with VM-controlled assigned peripherals is disclosed. A method of the invention includes interacting with a VM executed by a hypervisor of a origin host machine in order to cause the VM to prevent a state of a peripheral device controlled by the VM from changing, receiving the state of the peripheral device from at least one of the VM, a memory of the VM, or the peripheral device, and transferring the obtained state of the peripheral device to a destination host machine as part of a migration process of the VM.
    Type: Grant
    Filed: January 7, 2011
    Date of Patent: December 30, 2014
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Dor Laor, Avi Kivity
  • Patent number: 8880764
    Abstract: A computing apparatus identifies that a first physical processor of a host has forwarded information regarding a device interrupt for a device to a second physical processor executing at least one of a virtual processor that controls the device or an application thread that controls the device. After identifying that the first physical processor has forwarded the information regarding the device interrupt to the second physical processor and in response to determining that one or more update criteria have been satisfied, the computing apparatus updates at least one of the device or an interrupt controller to cause at least one of the device or the interrupt controller to send future device interrupts for the device to the second physical processor.
    Type: Grant
    Filed: August 30, 2011
    Date of Patent: November 4, 2014
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Avi Kivity
  • Patent number: 8806186
    Abstract: A method and system for providing a user-controllable boot order via a hypervisor in a virtual machine system. A Basic Input/Output System (BIOS) receives a boot order list associated with a guest from the hypervisor. The boot order list is an ordered list that specifies an order of device names, according to which the BIOS searches for boot software when booting up the guest. In the boot order list, devices of the same device type are identified by different device names. Upon receipt of a command to boot up the guest, the BIOS searches for the boot software following the order of the device names specified by the boot order list. The BIOS then boots up the guest using the boot software located in one of the devices.
    Type: Grant
    Filed: August 31, 2011
    Date of Patent: August 12, 2014
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Gieb Natapov
  • Patent number: 8737262
    Abstract: A system for providing a zero copy transmission with raw packets includes an operating system that receives an application request pertaining to a data packet to be transmitted over a network, where the data packet has already gone through networking stack processing invoked by the application. The operating system queries a driver of a network device on whether the network device has a zero copy capability. Based on the query response of the driver, the operating system determines whether a zero copy transmission should be used for the data packet. If not, the operating system copies the data packet from the application memory to a kernel buffer, and notifies the driver about the data packet in the kernel buffer. If so, the operating system refrains from copying the data packet to the kernel buffer, and notifies the driver about the data packet in the application memory.
    Type: Grant
    Filed: November 24, 2009
    Date of Patent: May 27, 2014
    Assignee: Red Hat Israel, Ltd.
    Inventor: Michael S. Tsirkin
  • Patent number: 8627133
    Abstract: A mechanism for virtual machine (VM) boot speed-up by clock acceleration is disclosed. A method of the invention includes detecting that a VM managed by a hypervisor of a host machine is starting a boot up process, modifying a rate of a clock of the VM to speed up the boot up process, determining that the boot up process of the VM is complete, and returning the rate of the VM clock to a normal operational rate that is slower than the rate of the VM clock during the boot up process.
    Type: Grant
    Filed: December 20, 2010
    Date of Patent: January 7, 2014
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Gleb Natapov
  • Patent number: 8626824
    Abstract: A local system receives a graphics structure generated from an application hosted within the local system, where the application is accessed by a remote system. The graphics structure represents a display output from the application, where the graphics structure is generated in response to a change of display characteristics of the local system. A hash generator generates a first hash from the graphics structure according to a hash algorithm. It is determining whether there is an existing hash maintained by the local system that matches the first hash. The local system transmits the first hash to the remote system without sending the graphics structure if there is an existing hash matching the first hash. The first hash is used by the remote system to identify a graphics structure maintained by the remote system for rendering a display of the remote system.
    Type: Grant
    Filed: February 26, 2010
    Date of Patent: January 7, 2014
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Izik Eidus
  • Publication number: 20130132949
    Abstract: A mechanism for virtual device interrupt hinting in virtualization systems is disclosed. A method of the invention includes receiving a virtual device event from a host central processing unit (CPU) of a multi-CPU host machine, the virtual device event directed to a virtual machine (VM) managed by the hypervisor on the host machine, identifying one or more virtual CPUs (VCPUs) of the VM that are running on the host CPU, and providing the identified one or more VCPUs of the VM as a hint to the VM, the hint sent to the VM with the virtual device event, wherein the VM programs a virtual device associated with the event to deliver interrupts to a VCPU of the VM identified in the hint.
    Type: Application
    Filed: November 22, 2011
    Publication date: May 23, 2013
    Inventor: MICHAEL S. TSIRKIN
  • Publication number: 20130125115
    Abstract: Methods and systems for executing a request between a virtual machine and a paravirtualized machine are provided. The request is received from the virtual machine at a first shared memory of a hypervisor. The first shared memory is accessible to the virtual machine but not the paravirtualized machine. The request is transferred by the hypervisor from the first shared memory to a second shared memory of the hypervisor. The second shared memory is accessible to the paravirtualized machine but not the virtual machine. The request is intended for execution by the paravirtualized machine.
    Type: Application
    Filed: November 15, 2011
    Publication date: May 16, 2013
    Inventors: Michael S. Tsirkin, Avi Kivity
  • Publication number: 20130100960
    Abstract: Methods and systems for managing multiple receive queues of a networking device of a host machine in a virtual machine system. The networking device includes multiple receive queues that are used to receive packets intended for a guest of the virtual machine system and pass the packets to the intended virtual machine. A hypervisor of the virtual machine system manages the switching from one or more receive queues (i.e., old receive queues) to one or more other receive queues (i.e., new receive queues) by managing the provisioning of packets from the receive queues to one or more virtual machines in the virtual machine system.
    Type: Application
    Filed: October 21, 2011
    Publication date: April 25, 2013
    Inventors: Michael S. Tsirkin, Dor Laor
  • Publication number: 20130054860
    Abstract: A computing apparatus determines that a virtual processor of a guest has been moved from a first physical processor of a host to a second physical processor of the host. The computing apparatus identifies a device that is controlled by the virtual processor, wherein device interrupts for the device are forwarded to the virtual processor. The computing apparatus updates at least one of the device or an interrupt controller to cause at least one of the device or the interrupt controller to send the device interrupts to the second physical processor of the host, wherein the second physical processor of the host forwards the device interrupts to the virtual processor running on the second physical processor without generating an inter-processor interrupt.
    Type: Application
    Filed: August 30, 2011
    Publication date: February 28, 2013
    Inventors: Michael S. Tsirkin, Avi Kivity
  • Publication number: 20130054950
    Abstract: A method and system for providing a user-controllable boot order via a hypervisor in a virtual machine system. A Basic Input/Output System (BIOS) receives a boot order list associated with a guest from the hypervisor. The boot order list is an ordered list that specifies an order of device names, according to which the BIOS searches for boot software when booting up the guest. In the boot order list, devices of the same device type are identified by different device names. Upon receipt of a command to boot up the guest, the BIOS searches for the boot software following the order of the device names specified by the boot order list. The BIOS then boots up the guest using the boot software located in one of the devices.
    Type: Application
    Filed: August 31, 2011
    Publication date: February 28, 2013
    Inventors: Michael S. Tsirkin, Gleb Natapov
  • Publication number: 20130054861
    Abstract: A computing apparatus identifies that a first physical processor of a host has forwarded information regarding a device interrupt for a device to a second physical processor executing at least one of a virtual processor that controls the device or an application thread that controls the device. After identifying that the first physical processor has forwarded the information regarding the device interrupt to the second physical processor and in response to determining that one or more update criteria have been satisfied, the computing apparatus updates at least one of the device or an interrupt controller to cause at least one of the device or the interrupt controller to send future device interrupts for the device to the second physical processor.
    Type: Application
    Filed: August 30, 2011
    Publication date: February 28, 2013
    Inventors: Michael S. Tsirkin, Avi Kivity
  • Patent number: 8356120
    Abstract: A mechanism for memory change tracking during migration of a virtual machine (VM) with VM-controlled assigned peripherals is disclosed. A method of the invention includes receiving a state of a VM-controlled peripheral device running on a destination host machine from an origin host machine, wherein the VM is executed by a hypervisor of the destination host machine, providing the received state of the peripheral device to at least one of the VM, a memory of the VM, or the peripheral device in order to cause the peripheral device to be restored to that state on the destination host machine, and interacting with the VM in order to cause the VM to start the peripheral device in the restored state.
    Type: Grant
    Filed: January 7, 2011
    Date of Patent: January 15, 2013
    Assignee: Red Hat Israel, Ltd.
    Inventors: Michael S. Tsirkin, Dor Laor, Avi Kivity