Arrangement for limiting access to addresses by a consumer process instigating work in a channel adapter based on virtual address mapping
First Claim
1. A method in a host computing system, the method comprising:
- assigning, by an operating system resource, a prescribed virtual address space and a corresponding mapping value for use by a consumer process for execution of a memory access;
loading a unique translation map entry having the corresponding mapping value for the consumer process into an address translator configured for controlling the memory access to a physical address space assigned for access to a host channel adapter; and
outputting by the address translator a work notification, received from the consumer process and specifying a prescribed virtual destination address within the prescribed virtual address space, to a corresponding mapped physical destination address within the mapped physical address space based on the unique translation map entry, the host channel adapter configured for detecting the work notification at the mapped physical destination address.
1 Assignment
0 Petitions
Accused Products
Abstract
An operating system resource, configured for establishing communications between consumer processes configured for generating respective work notifications and a host channel adapter configured for servicing the work notifications, assigns virtual address space for use by the consumer processes in executing memory accesses, and respective unique mapping values. An address translator includes a translation map for uniquely mapping the virtual address space used by the consumer processes to a prescribed physical address space accessible by the host channel adapter. The address translator, in response to receiving from an identified consumer process the work notification at a virtual address, maps the work notification to a corresponding prescribed physical address based on the corresponding mapping value assigned to the identified consumer process, enabling the host channel adapter to detect the work notification for the consumer process.
68 Citations
10 Claims
-
1. A method in a host computing system, the method comprising:
-
assigning, by an operating system resource, a prescribed virtual address space and a corresponding mapping value for use by a consumer process for execution of a memory access;
loading a unique translation map entry having the corresponding mapping value for the consumer process into an address translator configured for controlling the memory access to a physical address space assigned for access to a host channel adapter; and
outputting by the address translator a work notification, received from the consumer process and specifying a prescribed virtual destination address within the prescribed virtual address space, to a corresponding mapped physical destination address within the mapped physical address space based on the unique translation map entry, the host channel adapter configured for detecting the work notification at the mapped physical destination address. - View Dependent Claims (2, 3, 4, 5)
the loading step includes loading, into the address translator, respective unique translation map entries having the respective mapping values specifying respective physical address space offset values for respective consumer processes; and
the outputting step includes;
receiving from an identified one of the consumer processes the work notification specifying the prescribed virtual destination address, and outputting the work notification to the corresponding mapped physical destination address based on the corresponding unique translation map entry.
-
-
3. The method of claim 2, wherein the assigning step includes assigning as the prescribed virtual address space a contiguous range of addresses, the contiguous range having a prescribed size.
-
4. The method of claim 3, wherein the assigning step includes selecting the contiguous range of addresses as a four kilobyte address range.
-
5. The method of claim 3, further comprising identifying, by the host channel adapter, the one consumer process having generated the work notification based on the corresponding mapped physical destination address relative to an offset determined based on the prescribed size and a zero-offset address location.
-
6. A host computing system comprising:
-
a host channel adapter configured for performing a work request, generated by a consumer process, for access to a system area network in response to detecting a work notification at a prescribed physical destination address;
an address translator configured for outputting the work notification, received from the consumer process and specifying a prescribed virtual destination address, to the host channel adapter at the prescribed physical destination address based on a unique translation map entry having a mapping value for mapping the prescribed virtual destination address for the corresponding consumer process to the corresponding physical destination address; and
an operating system resource configured for assigning to the consumer process a prescribed virtual address space including the prescribed virtual destination address, and the corresponding mapping value. - View Dependent Claims (7, 8, 9, 10)
-
Specification