Method and apparatus for interfacing device drivers to single multi-function adapter
First Claim
1. An apparatus comprising:
- an adapter to be comprised in a server and being capable of providing a plurality input/output (I/O) services, the server including a plurality of central processing units and host memory, the adapter to be coupled to the plurality of central processing units via an interface, the server including a certain operating system that is one of a plurality of different operating systems to access the I/O services via drivers and an interface manager comprised in the server, the adapter including modules to implement the I/O services, the adapter also including ports to be coupled to a network, the modules being to implement TCP offload, iSCSI protocol, and iWARP RDMA protocol-related functions, the drivers being to export adapter functionalities to the certain operating system, the adapter functionalities being associated in accordance with a mapping with peripheral component interconnect (PCI) functions, the mapping being to map the I/O services that are implemented by the modules to one or more respective ones of the PCI functions, the manager to allow the drivers to load and unload in any order on any combination of the PCI functions while permitting operation of remaining running drivers to continue during driver transitions, a request to an unloading component to be stalled until handoff to another capable component has occurred, the interface manager to be used to manage which other managers in the server are actively controlling adapter resources on a per PCI function basis to permit failure isolation and to prevent resource over-usage, and when a handoff operation from one manager to another manager is to occur, information related to resources managed by the one manager is to be provided to the another manager.
5 Assignments
0 Petitions
Accused Products
Abstract
Systems which utilize a series of managers to handle resource management. Three types of managers are preferably used, with each manager being in one of two states, active or available. The types of managers are Global Interface Manager (GIM), Resource Manager (RM) and Access Manager (AM). Associated with each device driver for a given function is a GIM. The device driver may be associated with one or more RMs and/or AMs. Among managers of a given type, one is the active manager and all other managers of that specific type are available and work with the active manager to handle resource requests. As there can be RMs for different resources, the active manager concept is applied to the RMs associated with each resource. Mechanisms are present to allow the active manager and related information to be transferred to an available manager if necessary.
144 Citations
21 Claims
-
1. An apparatus comprising:
an adapter to be comprised in a server and being capable of providing a plurality input/output (I/O) services, the server including a plurality of central processing units and host memory, the adapter to be coupled to the plurality of central processing units via an interface, the server including a certain operating system that is one of a plurality of different operating systems to access the I/O services via drivers and an interface manager comprised in the server, the adapter including modules to implement the I/O services, the adapter also including ports to be coupled to a network, the modules being to implement TCP offload, iSCSI protocol, and iWARP RDMA protocol-related functions, the drivers being to export adapter functionalities to the certain operating system, the adapter functionalities being associated in accordance with a mapping with peripheral component interconnect (PCI) functions, the mapping being to map the I/O services that are implemented by the modules to one or more respective ones of the PCI functions, the manager to allow the drivers to load and unload in any order on any combination of the PCI functions while permitting operation of remaining running drivers to continue during driver transitions, a request to an unloading component to be stalled until handoff to another capable component has occurred, the interface manager to be used to manage which other managers in the server are actively controlling adapter resources on a per PCI function basis to permit failure isolation and to prevent resource over-usage, and when a handoff operation from one manager to another manager is to occur, information related to resources managed by the one manager is to be provided to the another manager. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
9. A method comprising:
providing by an adapter a plurality input/output (I/O) services, the adapter to be comprised in a server, the server including a plurality of central processing units and host memory, the adapter to be coupled to the plurality of central processing units via an interface, the server including a certain operating system that is one of a plurality of different operating systems to access the I/O services via drivers and an interface manager comprised in the server, the adapter including modules to implement the I/O services, the adapter also including ports to be coupled to a network, the modules being to implement TCP offload, iSCSI protocol, and iWARP RDMA protocol-related functions, the drivers being to export adapter functionalities to the certain operating system, the adapter functionalities being associated in accordance with a mapping with peripheral component interconnect (PCI) functions, the mapping being to map the I/O services that are implemented by the modules to one or more respective ones of the PCI functions, the manager to allow the drivers to load and unload in any order on any combination of the PCI functions while permitting operation of remaining drivers to continue during driver transitions, a request to an unloading component to be stalled until handoff to another capable component has occurred, the interface manager to be used to manage which other managers in the server are actively controlling adapter resources on a per PCI function basis to permit failure isolation and to prevent resource over-usage, and when a handoff operation from one manager to another manager is to occur, information related to resources managed by the one manager is to be provided to the another manager. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
17. Computer-readable memory having machine-executable instructions that when executed by a machine result in performance of operations comprising:
providing by an adapter a plurality input/output (I/O) services, the adapter to be comprised in a server, the server including a plurality of central processing units and host memory, the adapter to be coupled to the plurality of central processing units via an interface, the server including a certain operating system that is one of a plurality of different operating systems to access the I/O services via drivers and an interface manager comprised in the server, the adapter including modules to implement the I/O services, the adapter also including ports to be coupled to a network, the modules being to implement TCP offload, iSCSI protocol, and iWARP RDMA protocol-related functions, the drivers being to export adapter functionalities to the certain operating system, the adapter functionalities being associated in accordance with a mapping with peripheral component interconnect (PCI) functions, the mapping being to map the I/O services that are implemented by the modules to one or more respective ones of the PCI functions, the manager to allow the drivers to load and unload in any order on any combination of the PCI functions while permitting operation of remaining drivers to continue during driver transitions, a request to an unloading component to be stalled until handoff to another capable component has occurred, the interface manager to be used to manage which other managers in the server are actively controlling adapter resources on a per PCI function basis to permit failure isolation and to prevent resource over-usage, and when a handoff operation from one manager to another manager is to occur, information related to resources managed by the one manager is to be provided to the another manager. - View Dependent Claims (18, 19, 20, 21)
Specification