Patents by Inventor Paolo Bonzini

Paolo Bonzini 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: 20160203088
    Abstract: Methods, systems, and computer program products for executing a protected function are provided. A computer-implemented method may include storing a first virtual machine function instruction as the last instruction on the first trampoline page that is executable to configure access privileges according to a trampoline view, storing a page table setup instruction on the second trampoline page, and storing a second virtual machine function instruction as a last instruction on the second trampoline page that is executable to configure access privileges according to a protected view.
    Type: Application
    Filed: January 14, 2015
    Publication date: July 14, 2016
    Inventors: Michael Tsirkin, Paolo Bonzini
  • Patent number: 9389910
    Abstract: An application associated with a virtual processor running on a physical processor reads a first value of a counter and a second value of the counter. The counter is indicative of a migration status of the virtual processor with respect to the physical processor. Responsive to determining that the first value of the counter does not equal the second value of the counter, the application ascertains whether a value of a hardware parameter associated with the physical processor has changed during a time interval. The migration status indicates a count of the number of times the virtual processor has migrated a first physical processor to a second physical processor. The application determines the validity of a value of a performance monitoring unit derived from the hardware parameter in view of the application ascertaining whether the value of the hardware parameter has changed during the time interval.
    Type: Grant
    Filed: June 2, 2014
    Date of Patent: July 12, 2016
    Assignee: Red Hat Israel, Ltd.
    Inventors: Karen Noel, Paolo Bonzini, Ronen Hod, Marcelo Tosatti
  • Patent number: 9378057
    Abstract: An application associated with a processor reads a first value of a counter and a second value of the counter. The counter is indicative of a migration status of the application with respect to the processor. Responsive to determining that the first value of the counter does not equal the second value of the counter, the application ascertains whether a value of a hardware parameter associated with the processor has changed during a time interval. The migration status indicates a count of the number of times the application has migrated from one processor to another processor. The application determines the validity of a value of a performance monitoring unit derived from the hardware parameter in view of the application ascertaining whether the value of the hardware parameter has changed during the time interval.
    Type: Grant
    Filed: February 28, 2014
    Date of Patent: June 28, 2016
    Assignee: Red Hat Israel, Ltd.
    Inventors: Karen Noel, Paolo Bonzini, Ronen Hod, Marcelo Tosatti
  • Publication number: 20160170653
    Abstract: A system and method for ballooning with assigned devices includes inflating a memory balloon, determining whether a first memory page is locked based on information associated with the first memory page, when the first memory page is locked unlocking the first memory page and removing first memory addresses associated with the first memory page from management by an input/output memory management unit (IOMMU), and reallocating the first memory page. The first memory page is associated with a first assigned device.
    Type: Application
    Filed: February 11, 2016
    Publication date: June 16, 2016
    Inventors: Paolo BONZINI, Michael TSIRKIN
  • Publication number: 20160147551
    Abstract: A hypervisor associates a combined register space with a virtual device to be presented to a guest operating system of a virtual machine, the combined register space comprising a default register space and an additional register space. Responsive to detecting an access of the additional register space by the guest operating system of the virtual machine, the hypervisor performs an operation on behalf of the virtual machine, the operation pertaining to the access of the additional register space.
    Type: Application
    Filed: November 25, 2014
    Publication date: May 26, 2016
    Inventors: Michael S. Tsirkin, Paolo Bonzini
  • Publication number: 20160139942
    Abstract: A method performed by a physical computing system includes detecting an interrupt signal sent to a virtual processor being managed by the hypervisor, creating a map between the virtual processor and an Input/Output (I/O) thread associated with the interrupt signal, determining that the virtual processor is idle, finding the I/O thread associated with the idle virtual processor based on the map, and moving the I/O thread associated with the idle virtual processor up in a processing queue, the processing queue being for processes to be executed on a physical processor.
    Type: Application
    Filed: November 13, 2014
    Publication date: May 19, 2016
    Inventors: Michael Tsirkin, Paolo Bonzini
  • Publication number: 20160124762
    Abstract: A hypervisor identifies one or more interrupts of a networking device for a virtual machine. The hypervisor queues the interrupts and determines the execution state of at least one virtual processor of a virtual machine. Upon determining that the execution state of the virtual processor is active, the hypervisor continues queuing the interrupts of the networking device. Upon determining that the execution state of the virtual processor has changed to idle, the hypervisor provides the queued interrupts to the virtual machine.
    Type: Application
    Filed: October 30, 2014
    Publication date: May 5, 2016
    Inventors: Michael S. Tsirkin, Paolo Bonzini
  • Patent number: 9311164
    Abstract: A system and method for ballooning with assigned devices includes inflating a memory balloon, determining whether a first memory page is locked based on information associated with the first memory page, when the first memory page is locked unlocking the first memory page and removing first memory addresses associated with the first memory page from management by an input/output memory management unit (IOMMU), and reallocating the first memory page. The first memory page is associated with a first assigned device.
    Type: Grant
    Filed: February 14, 2013
    Date of Patent: April 12, 2016
    Assignee: RED HAT ISRAEL, LTD.
    Inventors: Paolo Bonzini, Michael Tsirkin
  • Publication number: 20160011895
    Abstract: According to one example, a method performed by a physical computing system includes, with a hypervisor, detecting that a guest system running on a virtual machine has executed a halt instruction for a virtual processor of the virtual machine. The method further includes, with a physical processor, switching from a context of the virtual machine to a context of the hypervisor. The method further includes re-entering the context of the virtual machine in response to determining that there are no tasks pending for processes outside the context of the virtual machine, the processes being for execution by the physical processor.
    Type: Application
    Filed: July 10, 2014
    Publication date: January 14, 2016
    Inventors: Michael Tsirkin, Paolo Bonzini
  • Publication number: 20150347166
    Abstract: An application associated with a virtual processor running on a physical processor reads a first value of a counter and a second value of the counter. The counter is indicative of a migration status of the virtual processor with respect to the physical processor. Responsive to determining that the first value of the counter does not equal the second value of the counter, the application ascertains whether a value of a hardware parameter associated with the physical processor has changed during a time interval. The migration status indicates a count of the number of times the virtual processor has migrated a first physical processor to a second physical processor. The application determines the validity of a value of a performance monitoring unit derived from the hardware parameter in view of the application ascertaining whether the value of the hardware parameter has changed during the time interval.
    Type: Application
    Filed: June 2, 2014
    Publication date: December 3, 2015
    Applicant: Red Hat Israel, Ltd.
    Inventors: Karen Noel, Paolo Bonzini, Ronen Hod, Marcelo Tosatti
  • Publication number: 20150339142
    Abstract: According to one example, a method includes with a hypervisor, detecting that a guest has executed a memory monitor command for a virtual processor, making a copy of a memory address associated with the memory monitor command, the copy being placed in hypervisor memory, and with the hypervisor, in response to detecting that the guest system has executed a wait command, executing a loop until the copy is different than the data stored in the memory address.
    Type: Application
    Filed: May 20, 2014
    Publication date: November 26, 2015
    Inventors: Michael Tsirkin, Paolo Bonzini
  • Publication number: 20150248303
    Abstract: An application associated with a processor reads a first value of a counter and a second value of the counter. The counter is indicative of a migration status of the application with respect to the processor. Responsive to determining that the first value of the counter does not equal the second value of the counter, the application ascertains whether a value of a hardware parameter associated with the processor has changed during a time interval. The migration status indicates a count of the number of times the application has migrated from one processor to another processor. The application determines the validity of a value of a performance monitoring unit derived from the hardware parameter in view of the application ascertaining whether the value of the hardware parameter has changed during the time interval.
    Type: Application
    Filed: February 28, 2014
    Publication date: September 3, 2015
    Applicant: Red Hat Israel, Ltd.
    Inventors: Karen Noel, Paolo Bonzini, Ronen Hod, Marcelo Tosatti
  • Publication number: 20150135174
    Abstract: A snapshot manager in a virtual machine monitor receives a write request comprising data from a guest operating system of a virtual machine, wherein the write request is directed to a sector of a virtual disk associated with the virtual machine. The snapshot manager writes the data from the guest operating system of the virtual machine to the sector in a base image of the virtual disk, the base image comprising a current version of the virtual disk, wherein the virtual disk comprises the base image and a overlay image, the overlay image comprising a snapshot of the base image at a previous point in time.
    Type: Application
    Filed: November 12, 2013
    Publication date: May 14, 2015
    Applicant: Red Hat, Inc.
    Inventor: Paolo Bonzini
  • Patent number: 8935502
    Abstract: In a process for migrating a virtual machine's storage from a source disk to a destination disk, a virtual machine monitor (VMM) records a source-generation count representing contents on the source disk, a writes-mirrored value representing a number of writes replicated from the source disk to the destination disk at a time contents of the disks were equal, a flush-request value representing the source-generation count at a time a flush is requested by a guest operating system of the virtual machine, and a writes-flushed value representing the writes-mirrored value at a time of a last flush of the destination disk. Upon identification of a steady state, the VMM sets the writes-mirrored value to the recorded source-generation count.
    Type: Grant
    Filed: December 21, 2012
    Date of Patent: January 13, 2015
    Assignee: Red Hat, Inc.
    Inventor: Paolo Bonzini
  • Publication number: 20140229689
    Abstract: A system and method for ballooning with assigned devices includes inflating a memory balloon, determining whether a first memory page is locked based on information associated with the first memory page, when the first memory page is locked unlocking the first memory page and removing first memory addresses associated with the first memory page from management by an input/output memory management unit (IOMMU), and reallocating the first memory page. The first memory page is associated with a first assigned device.
    Type: Application
    Filed: February 14, 2013
    Publication date: August 14, 2014
    Applicant: Red Hat Israel, Ltd.
    Inventors: Paolo Bonzini, Michael Tsirkin
  • Publication number: 20140181015
    Abstract: In a process for migrating a virtual machine's storage from a source disk to a destination disk, during a steady state (i.e., wherein the contents of the virtual machine stored on the source disk and the destination disk are equal), a virtual machine monitor receives a set of write requests from a guest operating system (“guest”) of the virtual machine, provides confirmation of the completion of the set of writes to the source disk, and asynchronously replicates the set of write requests to the destination disk. Upon receipt of a flush request from the guest, the virtual machine monitor confirms completion of the flushing of the destination disk following replication of the write requests to the destination disk. Upon receipt of a switch request from a virtual machine manager, the virtual machine monitor switches the virtual machine to the destination disk and issues subsequent write requests to the destination disk.
    Type: Application
    Filed: December 21, 2012
    Publication date: June 26, 2014
    Applicant: RED HAT, INC.
    Inventor: Paolo Bonzini
  • Publication number: 20140181397
    Abstract: In a process for migrating a virtual machine's storage from a source disk to a destination disk, a virtual machine monitor (VMM) records a source-generation count representing contents on the source disk, a writes-mirrored value representing a number of writes replicated from the source disk to the destination disk at a time contents of the disks were equal, a flush-request value representing the source-generation count at a time a flush is requested by a guest operating system of the virtual machine, and a writes-flushed value representing the writes-mirrored value at a time of a last flush of the destination disk. Upon identification of a steady state, the VMM sets the writes-mirrored value to the recorded source-generation count.
    Type: Application
    Filed: December 21, 2012
    Publication date: June 26, 2014
    Applicant: RED HAT, INC.
    Inventor: Paolo Bonzini