发明名称 Managing configuration and system operations of a non-shared virtualized input/output adapter as virtual peripheral component interconnect root to single function hierarchies
摘要 A computer implemented method of managing an adapter includes determining that an adapter is assigned to an operating system and generating a single root input/output virtualization (SR-IOV) function associated with the adapter. The SR-IOV function may be correlated to a non-SR-IOV function, and the non-SR-IOV function may be used to modify an operational status of the adapter.
申请公布号 US9626207(B2) 申请公布日期 2017.04.18
申请号 US201113328535 申请日期 2011.12.16
申请人 INTERNATIONAL BUSINESS MACHINES CORPORATION 发明人 Graham Charles S.;Nordstrom Gregory M.;Oberly, III John R.
分类号 G06F9/455 主分类号 G06F9/455
代理机构 Patterson + Sheridan, LLP 代理人 Patterson + Sheridan, LLP
主权项 1. A method of managing an adapter in a data processing system, the method comprising: assigning a peripheral component interconnect (PCI) slot and the adapter to a virtualization intermediary; determining, by the virtualization intermediary, whether the adapter is single root input/output virtualization (SR-IOV) capable; determining, by the virtualization intermediary, whether an adapter slot that includes the adapter is an SR-IOV enabled adapter slot for sharing the adapter slot; associating the adapter with a PCI hardware of a hardware server of the data processing system; assigning control of the adapter to an operating system within a logical partition of the data processing system, wherein the operating system includes a PCI device tree including a plurality of virtual PCI host bridge nodes, a plurality of PCI host bridge nodes and a plurality of device nodes, wherein each PCI host bridge node represents a respective PCI host bridge of the hardware server, and wherein each device node represents a respective instance of a virtual function of the adapter; determining whether the operating system is capable of using the adapter as SR-IOV enabled adapter by reading a configuration file by the virtualization intermediary; detecting a first virtual function of the adapter corresponding to a first physical function of the PCI hardware, wherein the first physical function includes a PCI memory space in a memory; in response to detecting the first virtual function, creating a first device node in the PCI device tree, wherein the first device node indicates at least one of a function or a property associated with the detected first virtual function, wherein the first device node is usable by the operating system to identify a first programming interface of the detected first virtual function; associating the created first device node with the detected first virtual function of the adapter; associating the created first device node with a first virtual PCI host bridge node in the PCI device tree; associating the fist virtual PCI host bridge node with a PCI host bridge domain, wherein the PCI host bridge domain facilitates communication with the detected first virtual function via the first virtual PCI host bridge node; establishing, in a memory, base address registers for mapping virtual function address registers to physical function address registers; writing a value, by a configuration firmware, to a base address register of a first physical PCI function corresponding to the first virtual PCI function; intercepting, by the virtualization intermediary, the writing of the value by the configuration firmware and storing in memory, by the virtualization intermediary, an emulated value; intercepting, by the virtualization intermediary, a read by the configuration firmware; in response to the intercepting of the read, returning, by the virtualization intermediary to the configuration firmware, the emulated value; virtualization intermediary passes a configuration read operation to a virtual function configuration register within the adapter; in response to the read operation, returning, by the first virtual function, the physical function base address register of the first physical function within the adapter in response by a call by the configuration firmware to the first virtual function; and translating, the logical virtual PCI host bridge bus number and device function number to the physical PCI function number utilized on the physical PCI bus.
地址 Armonk NY US