SYSTEM AND METHOD FOR DISTRIBUTION OF RESOURCES FOR AN I/O VIRTUALIZED (IOV) ADAPTER AND MANAGEMENT OF THE ADAPTER THROUGH AN IOV MANAGEMENT PARTITION
First Claim
1. A method, in a data processing system, for managing input/output (I/O) virtualization, comprising:
- creating one or more client partitions in the data processing system, each client partition having an associated portion of resources of the data processing system;
creating, in the data processing system, an I/O virtualization management partition (IMP);
identifying, by the IMP, one or more I/O virtualization (IOV) enabled I/O endpoints associated with the data processing system;
assigning, by the IMP, virtual functions of the one or more IOV enabled I/O endpoints to the one or more client partitions;
creating, by a hypervisor of the data processing system, at least one communication structure for communicating between the IMP and the one or more client partitions based on the assignment of virtual functions to the one or more client partitions; and
performing, by at least one client partition of the one or more client partitions, virtual function configuration operations with one or more virtual functions of the one or more IOV enabled I/O endpoints using the at least one communication structure.
1 Assignment
0 Petitions
Accused Products
Abstract
The system and method address the situation where an input/output (I/O) fabric is shared by more than one logical partition (LPAR) and where each LPAR can share with the other LPARs an I/O adapter (IOA). In particular, each LPAR is assigned its own separate address space to access a virtual function (VF) assigned to it such that each LPAR'"'"'s perception is that it has its own independent IOA. Each VF may be shared across multiple LPARs. Facilities are provided for management of the shared resources of the IOA via a Physical Function (PF) of the IOA by assignment of that PF to an I/O Virtualization Management Partition (IMP). The code running in the IMP acts as a virtual intermediary to the VFs for fully managing the VF error handling, VF reset, and configuration operations. The IMP also acts as an interface to the PF for accessing common VF functionality. Furthermore, the functions of resource assignment and management relative to the VFs and the client partitions that use those VFs, which might normally be done by an entity like a hypervisor, are implemented by this IMP.
172 Citations
20 Claims
-
1. A method, in a data processing system, for managing input/output (I/O) virtualization, comprising:
-
creating one or more client partitions in the data processing system, each client partition having an associated portion of resources of the data processing system; creating, in the data processing system, an I/O virtualization management partition (IMP); identifying, by the IMP, one or more I/O virtualization (IOV) enabled I/O endpoints associated with the data processing system; assigning, by the IMP, virtual functions of the one or more IOV enabled I/O endpoints to the one or more client partitions; creating, by a hypervisor of the data processing system, at least one communication structure for communicating between the IMP and the one or more client partitions based on the assignment of virtual functions to the one or more client partitions; and performing, by at least one client partition of the one or more client partitions, virtual function configuration operations with one or more virtual functions of the one or more IOV enabled I/O endpoints using the at least one communication structure. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer program product comprising a computer recordable medium having a computer readable program recorded thereon, wherein the computer readable program, when executed in a data processing system, causes the data processing system to:
-
create one or more client partitions in the data processing system, each client partition having an associated portion of resources of the data processing system; create, in the data processing system, an I/O virtualization management partition (IMP); identify, by the IMP, one or more I/O virtualization (IOV) enabled I/O endpoints associated with the data processing system; assign, by the IMP, virtual functions of the one or more IOV enabled I/O endpoints to the one or more client partitions; create, by a hypervisor of the data processing system, at least one communication structure for communicating between the IMP and the one or more client partitions based on the assignment of virtual functions to the one or more client partitions; and perform, by at least one client partition of the one or more client partitions, virtual function configuration operations with one or more virtual functions of the one or more IOV enabled I/O endpoints using the at least one communication structure. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A data processing system, comprising:
-
one or more client partitions, each client partition having an associated portion of resources of the data processing system; an I/O virtualization management partition (IMP) in communication with the one or more client partitions; one or more I/O endpoints in communication with the IMP; and at least one communication structure provided in association with the IMP and the one or more client partitions, wherein; the IMP identifies one or more I/O virtualization (IOV) enabled I/O endpoints associated with the data processing system, the IMP assigns virtual functions of the one or more IOV enabled I/O endpoints to the one or more client partitions, and at least one client partition of the one or more client partitions performs virtual function configuration operations with one or more virtual functions of the one or more IOV enabled I/O endpoints using the at least one communication structure.
-
Specification