System and method for processor queue to linear block address translation using protection table control based on a protection domain
First Claim
1. A method, in an input/output (I/O) adapter coupled to a host system running an application instance, comprising:
- retrieving, by the I/O adapter, a processor queue entry in a processor queue associated with the application instance, wherein the processor queue entry references a storage block;
verifying, in the I/O adapter, that the storage block referenced by the processor queue entry is associated with the application instance; and
processing, in the I/O adapter, the processor queue entry if the storage block referenced by the processor queue entry is associated with the application instance.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention provides a system, method, and computer program product that enables user space middleware or applications to pass block mode storage requests directly to a physical I/O Adapter without run-time involvement from the local Operating System (OS), or, in a virtual system, the local Hypervisor. Specifically, the present invention is directed to a mechanism for providing and using a linear block address (LBA) translation protection table (TPT) to control user space and out of user space Input/Output (I/O) operations. In one aspect of the present invention, the LBATPT includes an adapter protection table that has entries for each portion of a storage device. Each entry may include a key instance and protection domain, along with other protection table context information, against which I/O requests may be checked to determine if an application instance that submitted the I/O requests may access the LBAs identified in the I/O requests.
113 Citations
20 Claims
-
1. A method, in an input/output (I/O) adapter coupled to a host system running an application instance, comprising:
-
retrieving, by the I/O adapter, a processor queue entry in a processor queue associated with the application instance, wherein the processor queue entry references a storage block;
verifying, in the I/O adapter, that the storage block referenced by the processor queue entry is associated with the application instance; and
processing, in the I/O adapter, the processor queue entry if the storage block referenced by the processor queue entry is associated with the application instance. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer program product comprising a computer useable medium having a computer readable program, wherein the computer readable program, when executed on an input/output (I/O) adapter coupled to a host system running an application instance, causes the I/O adapter to:
-
retrieve a processor queue entry in a processor queue associated with the application instance, wherein the processor queue entry references a storage block;
verify that the storage block referenced by the processor queue entry is associated with the application instance; and
process the processor queue entry if the storage block referenced by the processor queue entry is associated with the application instance. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A data processing system, comprising:
-
a host system; and
an input/output (I/O) adapter coupled to the host system, wherein the host system runs an application instance, and wherein the I/O adapter;
retrieves a processor queue entry in a processor queue associated with the application instance, wherein the processor queue entry references a storage block;
verifies that the storage block referenced by the processor queue entry is associated with the application instance; and
processes the processor queue entry if the storage block referenced by the processor queue entry is associated with the application instance. - View Dependent Claims (20)
-
Specification