Patents by Inventor David Hildenbrand
David Hildenbrand 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).
-
Patent number: 12190171Abstract: Systems and methods for ballooning related memory allocation techniques for execution environments. An example method may comprise maintaining, by an operating system of a hypervisor, a list of free memory pages associated with the execution environment, wherein each entry in the list references a set of memory pages that are contiguous in a guest address space; receiving, from a management application, a request for guest memory to be made available to the hypervisor, wherein the request comprises a minimum size of guest memory requested and a maximum size of guest memory; and responsive to identifying, by the operating system, in the list of free memory pages, a set of contiguous guest memory pages that is greater than or equal to the minimum size of memory requested, and less than or equal to the maximum size of memory requested, releasing the set of contiguous guest memory pages to the hypervisor.Type: GrantFiled: January 6, 2023Date of Patent: January 7, 2025Assignee: Red Hat, Inc.Inventors: Michael Tsirkin, David Hildenbrand
-
Patent number: 12169728Abstract: Technology is disclosed for non-fragmenting memory ballooning. An example method may involve: receiving, by a processing device, a request associated with a memory balloon; searching for available memory chunks in a memory, wherein the memory is fragmented and comprises a set of available chunks that are separate from each other; selecting, by the processing device, a first chunk and a second chunk of the set of available chunks, wherein the first chunk is smaller than the second chunk and is selected before the second chunk; and associating the first chunk and the second chunk with the memory balloon.Type: GrantFiled: March 1, 2021Date of Patent: December 17, 2024Assignee: Red Hat, Inc.Inventors: Michael Tsirkin, David Hildenbrand
-
Patent number: 11893408Abstract: A system includes a guest memory having guest physical pages (“GPPs”) that includes loan pages having a fixed quantity, a host memory, a processor in communication with the memory, and a virtual machine monitor (“VMM”). The VMM is configured to track a respective state (inflated or deflated) for each respective GPP. Additionally, the VMM is configured to track a respective status (in-use or unused) of each loan page, determine that each respective loan page is in-use, un-assign a first loan page from a corresponding GPP, discard the first loan page thereby changing the first loan page from in-use to unused, and assign the unused first loan page to a first GPP that is inflated, such that the first loan page's status updates to in-use. Each respective GPP having an inflated state is temporarily backed by the fixed quantity of loan pages.Type: GrantFiled: November 30, 2020Date of Patent: February 6, 2024Assignee: Red Hat, Inc.Inventor: David Hildenbrand
-
Publication number: 20230153171Abstract: Systems and methods for ballooning related memory allocation techniques for execution environments. An example method may comprise maintaining, by an operating system of a hypervisor, a list of free memory pages associated with the execution environment, wherein each entry in the list references a set of memory pages that are contiguous in a guest address space; receiving, from a management application, a request for guest memory to be made available to the hypervisor, wherein the request comprises a minimum size of guest memory requested and a maximum size of guest memory; and responsive to identifying, by the operating system, in the list of free memory pages, a set of contiguous guest memory pages that is greater than or equal to the minimum size of memory requested, and less than or equal to the maximum size of memory requested, releasing the set of contiguous guest memory pages to the hypervisor.Type: ApplicationFiled: January 6, 2023Publication date: May 18, 2023Inventors: Michael Tsirkin, David Hildenbrand
-
Patent number: 11593170Abstract: A system includes a memory, at least one processor in communication with the memory, a guest hypervisor, and a host hypervisor executing on the at least one processor. The host hypervisor is configured to receive a request for additional memory, request the additional memory from a paravirtualized memory device, allocate the additional memory to the guest hypervisor, and report a status of the request. The status of the request is either a success status or a failure status.Type: GrantFiled: March 25, 2020Date of Patent: February 28, 2023Assignee: Red Hat, Inc.Inventors: Michael Tsirkin, David Hildenbrand
-
Patent number: 11550729Abstract: Systems and methods for encryption support for virtual machines. An example method may comprise maintaining, by a virtual machine running on a host computer system, a list of free memory pages, wherein each entry in the list references a set of memory pages that are contiguous in a guest address space; receiving, from a hypervisor of the host computer system, a request for guest memory to be made available to the hypervisor, wherein the request comprises a minimum size of guest memory requested and a maximum size of guest memory; and responsive to identifying, in the list of free memory pages, a set of contiguous guest memory pages that is greater than or equal to the minimum size of memory requested, and less than or equal to the maximum size of memory requested, releasing the set of contiguous guest memory pages to the hypervisor.Type: GrantFiled: October 28, 2020Date of Patent: January 10, 2023Assignee: Red Hat, Inc.Inventors: Michael Tsirkin, David Hildenbrand
-
Patent number: 11474852Abstract: A balloon memory fragmentation reduction system includes a memory, at least one processor in communication with the memory, a guest operating system (OS) including a device driver, and a hypervisor executing on the at least one processor. The hypervisor is configured to record an amount of memory allocated by the device driver of the guest OS, locate a contiguous region of guest memory addresses according to the amount of memory allocated by the device driver, reserve the contiguous region of guest memory addresses, and notify the guest OS that the contiguous region of guest memory addresses is reserved.Type: GrantFiled: May 15, 2020Date of Patent: October 18, 2022Assignee: Red Hat, Inc.Inventors: David Hildenbrand, Michael Tsirkin
-
Patent number: 11436141Abstract: Systems and methods for free memory hinting by virtual machines. An example method comprises: identifying, by a virtual machine running on a host computer system, a first memory page referenced by a free memory list maintained by the virtual machine; identifying a second memory page residing in a hinting buffer associated with the virtual machine; moving the second memory page to the free memory list; disassociating the first memory page from the free memory list; and notifying the host computer system of an identifier of the first memory page.Type: GrantFiled: December 13, 2019Date of Patent: September 6, 2022Assignee: Red Hat, Inc.Inventors: David Hildenbrand, Michael Tsirkin
-
Publication number: 20220276889Abstract: Technology is disclosed for non-fragmenting memory ballooning. An example method may involve: receiving, by a processing device, a request associated with a memory balloon; searching for available memory chunks in a memory, wherein the memory is fragmented and comprises a set of available chunks that are separate from each other; selecting, by the processing device, a first chunk and a second chunk of the set of available chunks, wherein the first chunk is smaller than the second chunk and is selected before the second chunk; and associating the first chunk and the second chunk with the memory balloon.Type: ApplicationFiled: March 1, 2021Publication date: September 1, 2022Inventors: Michael Tsirkin, David Hildenbrand
-
Publication number: 20220171644Abstract: A system includes a guest memory having guest physical pages (“GPPs”) that includes loan pages having a fixed quantity, a host memory, a processor in communication with the memory, and a virtual machine monitor (“VMM”). The VMM is configured to track a respective state (inflated or deflated) for each respective GPP. Additionally, the VMM is configured to track a respective status (in-use or unused) of each loan page, determine that each respective loan page is in-use, un-assign a first loan page from a corresponding GPP, discard the first loan page thereby changing the first loan page from in-use to unused, and assign the unused first loan page to a first GPP that is inflated, such that the first loan page's status updates to in-use. Each respective GPP having an inflated state is temporarily backed by the fixed quantity of loan pages.Type: ApplicationFiled: November 30, 2020Publication date: June 2, 2022Inventor: David Hildenbrand
-
Publication number: 20220129386Abstract: Systems and methods for encryption support for virtual machines. An example method may comprise maintaining, by a virtual machine running on a host computer system, a list of free memory pages, wherein each entry in the list references a set of memory pages that are contiguous in a guest address space; receiving, from a hypervisor of the host computer system, a request for guest memory to be made available to the hypervisor, wherein the request comprises a minimum size of guest memory requested and a maximum size of guest memory; and responsive to identifying, in the list of free memory pages, a set of contiguous guest memory pages that is greater than or equal to the minimum size of memory requested, and less than or equal to the maximum size of memory requested, releasing the set of contiguous guest memory pages to the hypervisor.Type: ApplicationFiled: October 28, 2020Publication date: April 28, 2022Inventors: Michael Tsirkin, David Hildenbrand
-
Patent number: 11188361Abstract: Systems and methods for cross-architecture software distribution using a virtual instruction set architecture. An example method may comprise configuring, by a host computer system, a set of instructions for a virtual instruction set architecture; generating an executable program component using the virtual instruction set architecture for an operating system type; generating an emulator component for the virtual instruction set architecture, the emulator component configured to execute on a target computing system with a target instruction set architecture, wherein the target computing system executes the operating system type, and wherein the target instruction set architecture is different from the virtual instruction set architecture; providing the executable program to the target computing system; and providing the emulator component to the target computing system to cause the target computing system to execute the emulator component responsive to detecting a request to execute the executable program.Type: GrantFiled: June 26, 2020Date of Patent: November 30, 2021Assignee: Red Hat, Inc.Inventor: David Hildenbrand
-
Publication number: 20210303356Abstract: A system includes a memory, at least one processor in communication with the memory, a guest hypervisor, and a host hypervisor executing on the at least one processor. The host hypervisor is configured to receive a request for additional memory, request the additional memory from a paravirtualized memory device, allocate the additional memory to the guest hypervisor, and report a status of the request. The status of the request is either a success status or a failure status.Type: ApplicationFiled: March 25, 2020Publication date: September 30, 2021Inventors: Michael Tsirkin, David Hildenbrand
-
Patent number: 11099897Abstract: A virtual machine memory overcommit system includes an initialization memory, a device memory, at least one processor in communication with the initialization memory and the device memory, a guest operating system (OS) including a device driver, and a hypervisor executing on the at least one processor. The hypervisor is configured to expose the initialization memory to the guest OS of a virtual machine, initialize the guest OS, and expose the device memory to the guest OS. The device driver is configured to query an amount of memory available from the device memory and report the amount of memory available to the guest OS.Type: GrantFiled: September 16, 2019Date of Patent: August 24, 2021Assignee: Red Hat, Inc.Inventors: David Hildenbrand, Michael Tsirkin
-
Publication number: 20210182191Abstract: Systems and methods for free memory hinting by virtual machines. An example method comprises: identifying, by a virtual machine running on a host computer system, a first memory page referenced by a free memory list maintained by the virtual machine; identifying a second memory page residing in a hinting buffer associated with the virtual machine; moving the second memory page to the free memory list; disassociating the first memory page from the free memory list; and notifying the host computer system of an identifier of the first memory page.Type: ApplicationFiled: December 13, 2019Publication date: June 17, 2021Inventors: David Hildenbrand, Michael Tsirkin
-
Patent number: 10866814Abstract: Efficient instantiation of encrypted guests is disclosed. In an example, a first host with a first hypervisor is separated from a second host with a second hypervisor by a network. The first hypervisor executes to allocate a requested amount of memory associated with a first guest on the first host. Pages of the requested amount of memory written to by a boot process of the first guest are tracked. The second hypervisor is requested to allocate the requested amount of memory on the second host. All tracked pages written to by the boot process are transferred to the second host. In response to transferring all of the tracked pages, a transfer completion confirmation is sent to the second hypervisor and a second guest that is a migrated copy of the first guest is instantiated on the second host with the transferred pages from the first guest.Type: GrantFiled: February 24, 2020Date of Patent: December 15, 2020Assignee: Red Hat, Inc.Inventors: Michael Tsirkin, David Hildenbrand
-
Publication number: 20200278878Abstract: A balloon memory fragmentation reduction system includes a memory, at least one processor in communication with the memory, a guest operating system (OS) including a device driver, and a hypervisor executing on the at least one processor. The hypervisor is configured to record an amount of memory allocated by the device driver of the guest OS, locate a contiguous region of guest memory addresses according to the amount of memory allocated by the device driver, reserve the contiguous region of guest memory addresses, and notify the guest OS that the contiguous region of guest memory addresses is reserved.Type: ApplicationFiled: May 15, 2020Publication date: September 3, 2020Inventors: David Hildenbrand, Michael Tsirkin
-
Patent number: 10747450Abstract: A system includes at least one memory device, at least one processor in communication with the at least one memory device, a guest operating system (OS) associated with a device driver, and an out-of-memory (OOM) handler executing on the at least one processor. The OOM handler is configured to locate a memory device of the at least one memory device, send an out-of-memory request to the device driver that is associated with the memory device, and receive a response from the memory device. The device driver is configured to query an amount of unusable device memory, request to plug the unusable device memory, and report the previously unusable device memory as now usable memory.Type: GrantFiled: July 26, 2018Date of Patent: August 18, 2020Assignee: Red Hat, Inc.Inventors: David Hildenbrand, Luiz Capitulino
-
Publication number: 20200192678Abstract: Efficient instantiation of encrypted guests is disclosed. In an example, a first host with a first hypervisor is separated from a second host with a second hypervisor by a network. The first hypervisor executes to allocate a requested amount of memory associated with a first guest on the first host. Pages of the requested amount of memory written to by a boot process of the first guest are tracked. The second hypervisor is requested to allocate the requested amount of memory on the second host. All tracked pages written to by the boot process are transferred to the second host. In response to transferring all of the tracked pages, a transfer completion confirmation is sent to the second hypervisor and a second guest that is a migrated copy of the first guest is instantiated on the second host with the transferred pages from the first guest.Type: ApplicationFiled: February 24, 2020Publication date: June 18, 2020Inventors: Michael Tsirkin, David Hildenbrand
-
Patent number: 10664300Abstract: A balloon memory fragmentation reduction system includes a memory, at least one processor in communication with the memory, a guest operating system (OS) including a device driver, and a hypervisor executing on the at least one processor. The hypervisor is configured to record an amount of memory allocated by the device driver of the guest OS, locate a contiguous region of guest memory addresses according to the amount of memory allocated by the device driver, reserve the contiguous region of guest memory addresses, and notify the guest OS that the contiguous region of guest memory addresses is reserved.Type: GrantFiled: December 1, 2017Date of Patent: May 26, 2020Assignee: Red Hat, Inc.Inventors: David Hildenbrand, Michael Tsirkin