Patents by Inventor Vivek Mohan THAMPI
Vivek Mohan THAMPI 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: 20230082141Abstract: Techniques for supporting invocations of the RDTSC (Read Time-Stamp Counter) instruction, or equivalents thereof, by guest program code running within a virtual machine (VM), including guest program code running within a secure hardware enclave of the VM, are provided. In one set of embodiments, a hypervisor can activate time virtualization heuristics for the VM, where the time virtualization heuristics cause accelerated delivery of system clock timer interrupts to a guest operating system (OS) of the VM. The hypervisor can further determine a scaling factor to be applied to timestamps generated by one or more physical CPUs, where the timestamps are generated in response to invocations of a CPU instruction made by guest program code running within the VM, and where the scaling factor is based on the activated time virtualization heuristics. The hypervisor can then program the scaling factor into the one or more physical CPUs.Type: ApplicationFiled: October 18, 2022Publication date: March 16, 2023Inventors: VIVEK MOHAN THAMPI, ALOK NEMCHAND KATARIA, MARTIM CARBONE, DEEP SHAH
-
Patent number: 11586567Abstract: A virtual machine (VM) has direct access to an I/O device having physical and virtual functions and a mailbox register, and includes a guest driver for controlling the virtual functions. The VM runs on system software that includes a physical driver for controlling the physical function (PF) and maintains VM page tables, which include an entry that references a memory space into which the mailbox register is mapped. The system software registers a callback function with the physical driver, which the physical driver invokes upon receiving a trigger for communication with the guest driver. In response, the system software alters the page tables so that access to the mailbox register causes a PF intercept, and the callback function handles the communication with the guest driver. After completion of the communication, the system software alters the page tables so that access to the mailbox register does not cause a PF intercept.Type: GrantFiled: March 13, 2020Date of Patent: February 21, 2023Assignee: VMware, Inc.Inventors: Radu Rugina, Vivek Mohan Thampi
-
Patent number: 11544097Abstract: A method of migrating a virtual machine having a virtual device that is backed by direct passthrough hardware, from a source host to a destination host, includes the steps of determining whether or not the destination host has direct passthrough hardware that can back the virtual device, and upon determining that the destination host has direct passthrough hardware that can back the virtual device, determining if a version of the direct passthrough hardware at the source host matches a version of the direct passthrough hardware at the destination host. If the versions do not match, the steps further include quiescing the virtual device, deleting data structures relating to the virtual device, and then migrating the virtual machine from the source host to the destination host. If the versions match, the virtual machine is migrated without quiescing the virtual device and without deleting the data structures relating to the virtual device.Type: GrantFiled: March 3, 2020Date of Patent: January 3, 2023Assignee: VMWARE, INC.Inventors: Radu Rugina, Vivek Mohan Thampi
-
Patent number: 11507415Abstract: Techniques for supporting invocations of the RDTSC (Read Time-Stamp Counter) instruction, or equivalents thereof, by guest program code running within a virtual machine (VM), including guest program code running within a secure hardware enclave of the VM, are provided. In one set of embodiments, a hypervisor can activate time virtualization heuristics for the VM, where the time virtualization heuristics cause accelerated delivery of system clock timer interrupts to a guest operating system (OS) of the VM. The hypervisor can further determine a scaling factor to be applied to timestamps generated by one or more physical CPUs, where the timestamps are generated in response to invocations of a CPU instruction made by guest program code running within the VM, and where the scaling factor is based on the activated time virtualization heuristics. The hypervisor can then program the scaling factor into the one or more physical CPUs.Type: GrantFiled: March 18, 2020Date of Patent: November 22, 2022Assignee: VMWARE, INC.Inventors: Vivek Mohan Thampi, Alok Nemchand Kataria, Martim Carbone, Deep Shah
-
Publication number: 20210216357Abstract: Techniques for supporting invocations of the RDTSC (Read Time-Stamp Counter) instruction, or equivalents thereof, by guest program code running within a virtual machine (VM), including guest program code running within a secure hardware enclave of the VM, are provided. In one set of embodiments, a hypervisor can activate time virtualization heuristics for the VM, where the time virtualization heuristics cause accelerated delivery of system clock timer interrupts to a guest operating system (OS) of the VM. The hypervisor can further determine a scaling factor to be applied to timestamps generated by one or more physical CPUs, where the timestamps are generated in response to invocations of a CPU instruction made by guest program code running within the VM, and where the scaling factor is based on the activated time virtualization heuristics. The hypervisor can then program the scaling factor into the one or more physical CPUs.Type: ApplicationFiled: March 18, 2020Publication date: July 15, 2021Inventors: VIVEK MOHAN THAMPI, ALOK NEMCHAND KATARIA, MARTIM CARBONE, DEEP SHAH
-
Publication number: 20210209040Abstract: A virtual machine (VM) has direct access to an I/O device having physical and virtual functions and a mailbox register, and includes a guest driver for controlling the virtual functions. The VM runs on system software that includes a physical driver for controlling the physical function (PF) and maintains VM page tables, which include an entry that references a memory space into which the mailbox register is mapped. The system software registers a callback function with the physical driver, which the physical driver invokes upon receiving a trigger for communication with the guest driver. In response, the system software alters the page tables so that access to the mailbox register causes a PF intercept, and the callback function handles the communication with the guest driver. After completion of the communication, the system software alters the page tables so that access to the mailbox register does not cause a PF intercept.Type: ApplicationFiled: March 13, 2020Publication date: July 8, 2021Inventors: Radu Rugina, Vivek Mohan Thampi
-
Publication number: 20210208920Abstract: A method of migrating a virtual machine having a virtual device that is backed by direct passthrough hardware, from a source host to a destination host, includes the steps of determining whether or not the destination host has direct passthrough hardware that can back the virtual device, and upon determining that the destination host has direct passthrough hardware that can back the virtual device, determining if a version of the direct passthrough hardware at the source host matches a version of the direct passthrough hardware at the destination host. If the versions do not match, the steps further include quiescing the virtual device, deleting data structures relating to the virtual device, and then migrating the virtual machine from the source host to the destination host. If the versions match, the virtual machine is migrated without quiescing the virtual device and without deleting the data structures relating to the virtual device.Type: ApplicationFiled: March 3, 2020Publication date: July 8, 2021Inventors: Radu RUGINA, Vivek MOHAN THAMPI
-
Publication number: 20200401434Abstract: Disclosed are aspects of a Precision Time Protocol (PTP) implementation in a virtualized environment. A PTP daemon is executed in a VM that publishes clock parameters generated from a NIC providing a PTP stack to a shared memory space. Other VM's can obtain the clock parameters and synchronize clocks using a PTP daemon executed on the VM.Type: ApplicationFiled: June 19, 2019Publication date: December 24, 2020Inventors: VIVEK MOHAN THAMPI, Joseph A. Landers
-
Patent number: 10846145Abstract: Techniques for enabling live migration of VMs with passthrough PCI devices are provided. In one set of embodiments, a hypervisor of a host system can create a copy of a DMA buffer used by a VM of the host system and a passthrough PCI device of the VM. The hypervisor can further designate one of the DMA buffer or the copy of the DMA buffer as a vCPU buffer that is accessible by the VM, and designate the other of the DMA buffer or the copy of the DMA buffer as a device buffer that is accessible by the passthrough PCI device. The hypervisor can then synchronize the vCPU buffer and the device buffer with each other as the VM and passthrough PCI device interact with their respective buffers, and as part of the synchronization can intercept DMA work requests submitted by the VM/completed by the passthrough PCI device.Type: GrantFiled: December 17, 2018Date of Patent: November 24, 2020Assignee: VMware, Inc.Inventors: Xin Xu, Bryan Tan, Wei Xu, Tao Ren, Radu Rugina, Vivek Mohan Thampi
-
Publication number: 20190146853Abstract: Techniques for enabling live migration of VMs with passthrough PCI devices are provided. In one set of embodiments, a hypervisor of a host system can create a copy of a DMA buffer used by a VM of the host system and a passthrough PCI device of the VM. The hypervisor can further designate one of the DMA buffer or the copy of the DMA buffer as a vCPU buffer that is accessible by the VM, and designate the other of the DMA buffer or the copy of the DMA buffer as a device buffer that is accessible by the passthrough PCI device. The hypervisor can then synchronize the vCPU buffer and the device buffer with each other as the VM and passthrough PCI device interact with their respective buffers, and as part of the synchronization can intercept DMA work requests submitted by the VM/completed by the passthrough PCI device.Type: ApplicationFiled: December 17, 2018Publication date: May 16, 2019Inventors: Xin Xu, Bryan Tan, Wei Xu, Tao Ren, Radu Rugina, Vivek Mohan Thampi
-
Patent number: 10198299Abstract: Techniques for enabling live migration of VMs with passthrough PCI devices are provided. In one set of embodiments, a hypervisor of a host system can create a copy of a DMA buffer used by a VM of the host system and a passthrough PCI device of the VM. The hypervisor can further designate one of the DMA buffer or the copy of the DMA buffer as a vCPU buffer that is accessible by the VM, and designate the other of the DMA buffer or the copy of the DMA buffer as a device buffer that is accessible by the passthrough PCI device. The hypervisor can then synchronize the vCPU buffer and the device buffer with each other as the VM and passthrough PCI device interact with their respective buffers, and as part of the synchronization can intercept DMA work requests submitted by the VM/completed by the passthrough PCI device.Type: GrantFiled: October 30, 2017Date of Patent: February 5, 2019Assignee: VMWARE, INC.Inventors: Xin Xu, Bryan Tan, Wei Xu, Tao Ren, Radu Rugina, Vivek Mohan Thampi
-
Patent number: 9678816Abstract: Probes are employed to inject errors into code. In response to a function-entry trigger event, a probe writes a predefined test value to a return value register. The probe then cause function execution to be skipped such that the test value is returned in lieu of the value which would otherwise be returned by the function. Behavior after the error is injected may then be observed, data collected, etc. such that undesired behavior (e.g., crashes) can be identified and/or corrected. In an alternative embodiment, the probe which is triggered may write a test value to a given memory address.Type: GrantFiled: March 21, 2013Date of Patent: June 13, 2017Assignee: VMware, Inc.Inventors: Radu Rugina, Vivek Mohan Thampi, Ricardo E. Gonzalez, Alok Kataria
-
Publication number: 20140289564Abstract: Probes are employed to inject errors into code. In response to a function-entry trigger event, a probe writes a predefined test value to a return value register. The probe then cause function execution to be skipped such that the test value is returned in lieu of the value which would otherwise be returned by the function. Behavior after the error is injected may then be observed, data collected, etc. such that undesired behavior (e.g., crashes) can be identified and/or corrected. In an alternative embodiment, the probe which is triggered may write a test value to a given memory address.Type: ApplicationFiled: March 21, 2013Publication date: September 25, 2014Applicant: VMware, Inc.Inventors: Radu RUGINA, Vivek Mohan THAMPI, Ricardo E. GONZALEZ, Alok KATARIA