Vendor-independent resource configuration interface for self-virtualizing input/output device
First Claim
1. A method of managing a self-virtualizing input/output (IO) resource in a logically partitioned data processing system, wherein the self-virtualizing IO resource includes a plurality of physical functions, a plurality of physical ports, and a plurality of protocols, each physical function associated with a physical port from among the plurality of physical ports and a protocol from among the plurality of protocols, and each physical function associated with a plurality of virtual functions, the method comprising:
- in connection with configuring or creating a logical port in response to user input, mapping a logical port to a selected physical port from among the plurality of physical ports and a selected protocol from among the plurality of protocol, wherein the selected physical port and the selected protocol are received from a user in connection with configuring or creating the logical port and are received by a hypervisor in the logically partitioned data processing system over an interface; and
in connection with mapping the logical port to the selected physical port and the selected protocol, automatically assigning a virtual function to the logical port from among the plurality of virtual functions associated with the physical function associated with the selected physical port and selected protocol, wherein automatically assigning the virtual function to the logical port is performed by the hypervisor.
1 Assignment
0 Petitions
Accused Products
Abstract
A vendor-independent resource configuration interface automatically maps virtual functions to physical functions in a self-virtualizing IO resource using the concept of a logical port that maps to a particular physical port and protocol in the self-virtualizing IO resource. A user wishing to provide a logical partition access to a self-virtualizing IO resource typically creates or configures a logical port for the logical partition by mapping the logical port to a particular physical port and protocol defined for the self-virtualizing IO resource, and an appropriate virtual function mapped to an appropriate physical function on an appropriate self-virtualizing IO resource is automatically selected, typically without requiring the user to have a detailed understanding of the numbers of supported virtual functions, physical functions and protocols supported by specific resources.
90 Citations
23 Claims
-
1. A method of managing a self-virtualizing input/output (IO) resource in a logically partitioned data processing system, wherein the self-virtualizing IO resource includes a plurality of physical functions, a plurality of physical ports, and a plurality of protocols, each physical function associated with a physical port from among the plurality of physical ports and a protocol from among the plurality of protocols, and each physical function associated with a plurality of virtual functions, the method comprising:
-
in connection with configuring or creating a logical port in response to user input, mapping a logical port to a selected physical port from among the plurality of physical ports and a selected protocol from among the plurality of protocol, wherein the selected physical port and the selected protocol are received from a user in connection with configuring or creating the logical port and are received by a hypervisor in the logically partitioned data processing system over an interface; and in connection with mapping the logical port to the selected physical port and the selected protocol, automatically assigning a virtual function to the logical port from among the plurality of virtual functions associated with the physical function associated with the selected physical port and selected protocol, wherein automatically assigning the virtual function to the logical port is performed by the hypervisor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. An apparatus, comprising:
-
at least one processor; and program code configured upon execution by the at least one processor to manage a self-virtualizing input/output (IO) resource in a logically partitioned data processing system, wherein the self-virtualizing IO resource includes a plurality of physical functions, a plurality of physical ports, and a plurality of protocols, wherein each physical function is associated with a physical port from among the plurality of physical ports and a protocol from among the plurality of protocols, wherein each physical function is associated with a plurality of virtual functions, and wherein the program code is configured to manage the self-virtualizing IO resource by mapping a logical port to a selected physical port from among the plurality of physical ports and a selected protocol from among the plurality of protocols, and automatically assigning a virtual function to the logical port from among the plurality of virtual functions associated with the physical function associated with the selected physical port and selected protocol; wherein the program code is configured to map the logical port to the selected physical port and the selected protocol and automatically assign the virtual function to the logical port in connection with configuring or creating the logical port in response to user input, wherein the program code includes a hypervisor, wherein the selected physical port and the selected protocol are received from a user in connection with configuring or creating the logical port and are received by the hypervisor over an interface, and wherein the hypervisor is configured to automatically assign the virtual function to the logical port. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
-
23. A program product, comprising:
-
a non-transitory computer readable medium; and program code stored on the computer readable medium and configured upon execution to manage a self-virtualizing input/output (IO) resource in a logically partitioned data processing system, wherein the self-virtualizing IO resource includes a plurality of physical functions, a plurality of physical ports, and a plurality of protocols, wherein each physical function is associated with a physical port from among the plurality of physical ports and a protocol from among the plurality of protocols, wherein each physical function is associated with a plurality of virtual functions, and wherein the program code is configured to manage the self-virtualizing IO resource by mapping a logical port to a selected physical port from among the plurality of physical ports and a selected protocol from among the plurality of protocols, and automatically assigning a virtual function to the logical port from among the plurality of virtual functions associated with the physical function associated with the selected physical port and selected protocol, wherein the program code is configured to map the logical port to the selected physical port and the selected protocol and automatically assign the virtual function to the logical port in connection with configuring or creating the logical port in response to user input, wherein the program code includes a hypervisor, wherein the selected physical port and the selected protocol are received from a user in connection with configuring or creating the logical port and are received by the hypervisor over an interface, and wherein the hypervisor is configured to automatically assign the virtual function to the logical port.
-
Specification