Memory management offload for RDMA enabled network adapters
First Claim
Patent Images
1. A method comprising:
- receiving a work request in a network offload engine from a host;
in response to receiving the work request, registering in a translation table a memory region associated with the host.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, computer program product, and distributed data processing system for memory management. Memory regions are registered and have access rights and Protection domains associated with them in response to receiving a request for a memory operation including a virtual address, which is used to address into a data structure. A second data structure is then used to translate the virtual address into physical addresses for the operation. A third data structure is used to allow an incoming request responsive to a remote operation being initiated.
171 Citations
36 Claims
-
1. A method comprising:
-
receiving a work request in a network offload engine from a host;
in response to receiving the work request, registering in a translation table a memory region associated with the host. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method comprising:
-
placing a work request on a send queue in a network offload engine, wherein the work request contains an identification of a memory region to be registered with the network offload engine; and
receiving from the network offload engine a tag associated with the memory region as registered.
-
-
14. A method comprising:
-
registering a memory region in a network offload engine for transactional use with respect to a remote node;
performing a single transaction with the remote node with respect to the memory region; and
in response to performing the single transaction, deregistering the memory region.
-
-
15. A method comprising:
-
receiving from a remote node a tag associated with a memory region;
determining whether the memory region associated with the tag has been deregistered; and
in response to a determination that the memory region associated with the tag has been deregistered, indicating an error condition.
-
-
16. A computer program product in at least one computer-readable medium comprising functional descriptive material that, when executed by a computer, enables the computer to perform acts including:
-
receiving a work request in a network offload engine from a host;
in response to receiving the work request, registering in a translation table a memory region associated with the host. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A computer program product in at least one computer-readable medium comprising functional descriptive material that, when executed by a computer, enables the computer to perform acts including:
-
placing a work request on a send queue in a network offload engine, wherein the work request contains an identification of a memory region to be registered with the network offload engine; and
receiving from the network offload engine a tag associated with the memory region as registered.
-
-
28. A computer program product in at least one computer-readable medium comprising functional descriptive material that, when executed by a computer, enables the computer to perform acts including:
-
registering a memory region in a network offload engine for transactional use with respect to a remote node;
performing a single transaction with the remote node with respect to the memory region; and
in response to performing the single transaction, deregistering the memory region.
-
-
29. A computer program product in at least one computer-readable medium comprising functional descriptive material that, when executed by a computer, enables the computer to perform acts including:
-
receiving from a remote node a tag associated with a memory region;
determining whether the memory region associated with the tag has been deregistered; and
in response to a determination that the memory region associated with the tag has been deregistered, indicating an error condition.
-
-
30. A network offload engine comprising:
-
means for receiving a work request from a host;
means, responsive to receiving the work request, for registering in a translation table a memory region associated with the host. - View Dependent Claims (31, 32)
-
-
33. A host data processing system comprising:
-
means placing a work request on a send queue in a network offload engine associated with the host, wherein the work request contains an identification of a memory region to be registered with the network offload engine; and
means for receiving from the network offload engine a tag associated with the memory region as registered. - View Dependent Claims (34)
-
-
35. A data processing system comprising:
-
means for registering a memory region for transactional use with respect to a remote node;
means for performing a single transaction with the remote node with respect to the memory region; and
means, responsive to performing the single transaction, for deregistering the memory region.
-
-
36. A network offload engine comprising:
-
means for receiving from a remote node a tag associated with a memory region;
means for determining whether the memory region associated with the tag has been deregistered; and
means, responsive to a determination that the memory region associated with the tag has been deregistered, for indicating an error condition.
-
Specification