| US 7,464,191 B2 | ||
| System and method for host initialization for an adapter that supports virtualization | ||
| Richard Louis Arndt, Austin, Tex. (US); Giora Biran, Zichron-Yaakov (Israel); Patrick Allen Buckland, Austin, Tex. (US); Harvey Gene Kiel, Rochester, Minn. (US); Vadim Makhervaks, Austin, Tex. (US); Renato John Recio, Austin, Tex. (US); Leah Shalev, Zichron-Yaakov (Israel); and Jaya Srikrishnan, Wappingers Falls, N.Y. (US) | ||
| Assigned to International Business Machines Corporation, Armonk, N.Y. (US) | ||
| Filed on Feb. 25, 2005, as Appl. No. 11/65,830. | ||
| Prior Publication US 2006/0195626 A1, Aug. 31, 2006 | ||
| Int. Cl. G06F 13/28 (2006.01); G06F 13/24 (2006.01); G06F 3/00 (2006.01) | ||
| U.S. Cl. 710—10 [710/1; 710/34; 710/8; 710/9; 710/36; 710/37; 710/313; 711/1; 711/141] | 17 Claims |

| 1. A method of host initialization in a data processing system that includes a plurality of different system images, each
one of the plurality of system images independently executing an operating system, the method comprising the computer implemented
steps of:
allocating, in the adapter memory, a protection table segment for each one of the plurality of different system images, each
one of the protection table segments including a plurality of protection table entries, wherein each one of the protection
table segments cannot be accessed by ones of the plurality of system images other than the one of the plurality of system
images for which each one of the protection table segments was allocated;
associating an address table segment with each one of the plurality of system images, wherein each one of the address table
segments cannot be accessed by ones of the plurality of system images other than the one of the plurality of system images
for which each one of the address table segments was allocated;
for each one of the plurality of system images: including in one of the plurality of protection table entries, which is included
in the protection table segment that is allocated for the one of the plurality of system images, a protection domain, a logical
address, and an address table pointer that points to the address table segment that is associated with the one of the plurality
of system images;
allocating a first processing queue table segment in an adapter memory, wherein the first processing queue table segment is
associated with a first system image allocated in a host memory of the data processing system;
allocating, in the adapter memory, a first protection table segment that defines attributes of a plurality of regions of the
host memory, wherein the plurality of regions are associated with the first system image allocated in the host memory of the
data processing system;
allocating, in the adapter memory, a first address table segment associated with a first entry in the first protection table
segment that respectively defines physical addresses associated with the first entry in the first protection table segment;
and
responsive to allocating the first protection table segment and the first address table segment, mapping the physical addresses
to logical addresses, wherein the mapping is defined by the first protection table segment and the first address table segment.
|