IP Library Granted Patent US 9,354,933
Granted Patent B2
US 9,354,933 · App. 13/285,299 · Granted May 31, 2016

Remote direct memory access adapter state migration in a virtual environment

Inventors: Robert O. Sharp (Round Rock, TX); Kenneth G. Keels (Austin, TX)
Assignee: Intel Corporation
G06F9/5016
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,354,933
App. No.
13/285,299
Granted
May 31, 2016
Kind
B2
Abstract

In an embodiment of the present invention, a method includes partitioning a plurality of remote direct memory access context objects among a plurality of virtual functions, establishing a remote direct memory access connection between a first of the plurality of virtual functions, and migrating the remote direct memory access connection from the first of the plurality of virtual functions to a second of the plurality of virtual functions without disconnecting from the remote peer.

Claims (16)

1. A method comprising:

partitioning, by a virtual machine monitor running on a system, a plurality of remote direct memory access context objects among a plurality of virtual functions provided by a physical function of an input/output device in the system, including partitioning an onboard memory space of a network adapter into a plurality of regions, assigning a first region to a first of the plurality of virtual functions for storage of a portion of the plurality of remote direct memory access context objects, storing a segment table in a segment table space in the network adapter, storing at least a first remote direct memory access context object in the first memory region at a location referenced by a first entry in the segment table, and assigning the first entry to the first virtual function;

establishing, by a guest software running on the system, a remote direct memory access connection between the first of the plurality of virtual functions and a remote peer using the network adapter;

allocating a second region in the onboard memory space to a second of the plurality of virtual functions; and

migrating the remote direct memory access connection from the first of the plurality of virtual functions to the second of the plurality of virtual functions without disconnecting from the remote peer, the migrating including copying contents of the first region to the second region so that reassignment of the first virtual function context objects to the second virtual function is transparent to the guest software.

2. The method of claim 1 , further comprising partitioning a plurality of hardware resources related to the plurality of remote direct memory access context objects among the plurality of virtual functions.

3. A system comprising:

a host memory;

an input/output device including a first of a plurality of virtual functions;

a processor to execute a virtual machine monitor to partition a plurality of remote direct memory access context objects among the plurality of virtual functions, including partitioning a space in an onboard memory of a network adapter into a plurality of regions, assigning a first region to the first of the plurality of virtual functions for storage of a portion of the plurality of remote direct memory access context objects, storing a segment table in a segment table space in the network adapter, storing at least a first remote direct memory access context object in the first memory region at a location referenced by a first entry in the segment table, and assigning the first entry to the first virtual function; and

the network adapter to establish a remote direct memory access connection between the first virtual function and a remote peer, and to migrate the remote direct memory access connection from the first virtual function to a second virtual function without disconnecting from the first peer, the migrating to include copying contents of the first memory region to the second memory region so that reassignment of the first virtual function context objects to the second virtual function is transparent to a guest software.

4. The system of claim 3 , further comprising a plurality of hardware resources related to the plurality of remote direct memory access context objects to be partitioned among the plurality of virtual functions.

5. An apparatus comprising:

a memory to store a segment table to be partitioned among a plurality of virtual functions, the segment table including a plurality of entries, each entry to refer to one of a plurality of locations in an onboard memory of a network adapter, each location to store at least one of a plurality of remote direct memory access context objects, the plurality of entries including a first entry to reference a first location of the plurality of locations in the onboard memory, the first location in a first of a plurality of regions in the onboard memory, the first region to store a first of the plurality of remote direct memory access context objects, the first entry to be assigned to a first virtual function of the plurality of virtual functions; and

the network adapter, to establish a remote direct memory access connection between the first virtual function and a remote peer, and to migrate the remote direct memory access connection from the first virtual function to a second virtual function without disconnecting from the first peer, the migrating to include copying contents of the first memory region to a second memory region allocated to second virtual function context objects so that reassignment of the first virtual function context objects to the second virtual function is transparent to a guest software.

6. The apparatus of claim 5 , further comprising a plurality of hardware resources related to the plurality of remote direct memory access context objects to be partitioned among the plurality of virtual functions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2011
From: SHARP, ROBERT O.; KEELS, KENNETH G.
To: INTEL CORPORATION
Reel/Frame 027168/0262 →
Continuity (1)
Related Publication 20130110959A1 · May 2, 2013