Patents by Inventor John R. Oberly, III
John R. Oberly, III has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 10169178Abstract: A method, system and computer program product are provided for implementing shared adapter configuration updates concurrent with maintenance actions for a Single Root Input/Output Virtualization (SRIOV) adapter in a computer system. A configuration of the adapter is decoupled from the state of the adapter during a recovery period. When a configuration request is received, the configuration request is validated. Responsive to a valid configuration request, the saved configuration state of the adapter is updated. Once the adapter completes recovery, the adapter is restored to the new configuration instead of the configuration prior to failure.Type: GrantFiled: February 20, 2016Date of Patent: January 1, 2019Assignee: International Business Machines CorporationInventors: Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Patent number: 9778989Abstract: A method, system and computer program product are provided for implementing concurrent adapter firmware update of a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. An adapter driver is used to update adapter firmware concurrent with normal I/O operations. When configuration is stored in a scratchpad buffer, the adapter driver detects virtual functions (VFs) configured and operating. An enhanced error handling (EEH) process is initiated, freezing the VFs, and an updated adapter firmware image is loaded to the adapter. The adapter driver completes the EEH recovery, the adapter is restarted using the new updated adapter firmware. The VFs device drivers unfreeze the VFs, and complete the EEH recovery.Type: GrantFiled: August 31, 2015Date of Patent: October 3, 2017Assignee: International Business Machines CorporationInventors: Jesse P. Arroyo, James A. Donnelly, Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Patent number: 9720775Abstract: A method, system and computer program product are provided for implementing concurrent adapter firmware update of a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. An adapter driver is used to update adapter firmware concurrent with normal I/O operations. When configuration is stored in a scratchpad buffer, the adapter driver detects virtual functions (VFs) configured and operating. An enhanced error handling (EEH) process is initiated, freezing the VFs, and an updated adapter firmware image is loaded to the adapter. The adapter driver completes the EEH recovery, the adapter is restarted using the new updated adapter firmware. The VFs device drivers unfreeze the VFs, and complete the EEH recovery.Type: GrantFiled: June 12, 2013Date of Patent: August 1, 2017Assignee: International Business Machines CorporationInventors: Jesse P. Arroyo, James A. Donnelly, Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Patent number: 9626207Abstract: 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.Type: GrantFiled: December 16, 2011Date of Patent: April 18, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Charles S. Graham, Gregory M. Nordstrom, John R. Oberly, III
-
Patent number: 9411654Abstract: A method of managing an adapter includes identifying a firmware image configured to enable configuration firmware of a logical partition, where the firmware image is associated an expansion read-only memory (ROM). Access to the firmware image may be enabled by the logical partition, and the firmware image may be used to control of an operation of the adapter.Type: GrantFiled: December 16, 2011Date of Patent: August 9, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Charles S. Graham, Gregory M. Nordstrom, John R. Oberly, III
-
Patent number: 9400704Abstract: A method, system and computer program product are provided for implementing distributed debug data collection and analysis for a hardware I/O adapter, such as, a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. A predetermined event triggers a base error collection sequence. Adapter driver data is collected and virtual function (VF) device drivers are locked out responsive to triggering the base error collection sequence. Adapter debug data is collected and the adapter is reinitialized including an indication to VF drivers if VF error data is to be collected. The virtual function (VF) device drivers are unlocked allowing the VF device drivers to commence recovery of a respective virtual function (VF).Type: GrantFiled: June 12, 2013Date of Patent: July 26, 2016Assignee: Globalfoundries Inc.Inventors: Charles S. Graham, Robert J. Manulik, John R. Oberly, III, Timothy J. Schimke
-
Publication number: 20160170855Abstract: A method, system and computer program product are provided for implementing shared adapter configuration updates concurrent with maintenance actions for a Single Root Input/Output Virtualization (SRIOV) adapter in a computer system. A configuration of the adapter is decoupled from the state of the adapter during a recovery period. When a configuration request is received, the configuration request is validated. Responsive to a valid configuration request, the saved configuration state of the adapter is updated. Once the adapter completes recovery, the adapter is restored to the new configuration instead of the configuration prior to failure.Type: ApplicationFiled: February 20, 2016Publication date: June 16, 2016Inventors: Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Patent number: 9323620Abstract: A method, system and computer program product are provided for implementing shared adapter configuration updates concurrent with maintenance actions for a Single Root Input/Output Virtualization (SRIOV) adapter in a computer system. A configuration of the adapter is decoupled from the state of the adapter during a recovery period. When a configuration request is received, the configuration request is validated. Responsive to a valid configuration request, the saved configuration state of the adapter is updated. Once the adapter completes recovery, the adapter is restored to the new configuration instead of the configuration prior to failure.Type: GrantFiled: June 12, 2013Date of Patent: April 26, 2016Assignee: International Business Machines CorporationInventors: Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Patent number: 9317317Abstract: A method, system and computer program product are provided for implementing concurrent adapter driver maintenance and recovery for a Single Root Input/Output Virtualization (SRIOV) adapter in a computer system. An adapter driver at start up time performs configuration of the adapter and each of a set of virtual functions (VFs). The adapter driver writes critical adapter and VF configuration data to a scratchpad buffer. When device driver maintenance is needed, such as to load updated adapter driver firmware, all VF drivers are held off temporarily, current adapter driver is detached, and then the adapter driver is reloaded with the updated driver firmware. Then the adapter driver is restarted with the updated adapter driver firmware, and performs a reinitialization process. The adapter driver performs adapter and VF configuration restoring existing configuration using values read from the scratchpad buffer.Type: GrantFiled: June 12, 2013Date of Patent: April 19, 2016Assignee: International Business Machines CorporationInventors: Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Patent number: 9311127Abstract: A computer implemented method of managing an adapter includes enabling an adapter to be shared by operating systems and logical partitions. The adapter includes a plurality of multiple virtual functions. A virtualization intermediary may assign a virtual function of the plurality of virtual functions to at least one of an operating system and a logical partition. The virtual function may be used to modify an operational status of the adapter.Type: GrantFiled: December 16, 2011Date of Patent: April 12, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Charles S. Graham, Gregory M. Nordstrom, John R. Oberly, III
-
Patent number: 9304849Abstract: A method, system and computer program product are provided for implementing enhanced error handling for a hardware I/O adapter, such as a Single Root Input/Output Virtualization (SRIOV) adapter, in a virtualized system. The hardware I/O adapter is partitioned into multiple endpoints, with each Partitionable Endpoint (PE) corresponding to a function, and there is an adapter PE associated with the entire adapter. The endpoints are managed both independently for actions limited in scope to a single function, and as a group for actions with the scope of the adapter. An error or failure of the adapter PE freezes the adapter PE and propagates to the VF PEs associated with the adapter, causing the VF PEs to be frozen. An adapter driver and VF device drivers are informed of the error, and start recovery. The hypervisor locks out the VF device drivers at key points enabling adapter recovery to successfully complete.Type: GrantFiled: June 12, 2013Date of Patent: April 5, 2016Assignee: International Business Machines CorporationInventors: Jesse P. Arroyo, Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Publication number: 20150370642Abstract: A method, system and computer program product are provided for implementing concurrent adapter firmware update of a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. An adapter driver is used to update adapter firmware concurrent with normal I/O operations. When configuration is stored in a scratchpad buffer, the adapter driver detects virtual functions (VFs) configured and operating. An enhanced error handling (EEH) process is initiated, freezing the VFs, and an updated adapter firmware image is loaded to the adapter. The adapter driver completes the EEH recovery, the adapter is restarted using the new updated adapter firmware. The VFs device drivers unfreeze the VFs, and complete the EEH recovery.Type: ApplicationFiled: August 31, 2015Publication date: December 24, 2015Inventors: Jesse P. Arroyo, James A. Donnelly, Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Patent number: 9218219Abstract: A computer implemented method may include identifying allocations for each virtual function of a plurality of virtual functions that are provided via an input/output adapter. The computer implemented method may further include determining a range associated with each group of a plurality of groups based on the identified allocations. The computer implemented method may also include associating each virtual function with a group of the plurality of groups based on the range associated with the group. Where at least one group of the plurality of groups is empty, and where one or more groups of the plurality of groups has two or more virtual functions associated with the one or more groups, the computer implemented method may include distributing the two or more virtual functions to the at least one empty group. The computer implemented method may further include transferring the plurality of virtual functions from each group to a corresponding category at the input/output adapter.Type: GrantFiled: November 24, 2010Date of Patent: December 22, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Sean T. Brownlow, John R. Oberly, III
-
Patent number: 9111046Abstract: A method, system and computer program product are provided for implementing capacity and user-based resource allocation for a hardware I/O adapter, such as, a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. Configuring a virtual function (VF) is provided by supplying a capacity value of a port. The capacity value represents a percentage of the available performance of the port. The adapter driver configures multiple adapter parameters to provide the available performance for the port. A user is enabled to specify a level of performance assigned to each protocol of the port.Type: GrantFiled: June 12, 2013Date of Patent: August 18, 2015Assignee: International Business Machines CorporationInventors: Gary D. Anderson, Charles S. Graham, John R. Oberly, III, Timothy J. Schimke
-
Patent number: 9104601Abstract: A computing device may merge two translation tables used when performing a DMA operation into a single, combined translation table. To merge the translation tables, the computing device may update a register in the IOMMU to include a pointer to the combined translation table. In addition, the IOMMU may clear one of the registers from having a pointer to one of the merged translation table. Doing so means the entries in this translation table are now no longer assigned. The IOMMU may update the register with the pointer to the combined translation table to include the unassigned entries in the combined translation table. In this manner, the entries from the two translation tables are merged into the single, combined table. The combined translation table may be owned or assigned to a service provider that originally owned one of the merged translation tables or to a completely different service provider.Type: GrantFiled: October 18, 2013Date of Patent: August 11, 2015Assignee: International Business Machines CorporationInventors: Justin K. King, John R. Oberly, III, Travis J. Pizel
-
Patent number: 9104600Abstract: A computing device may merge two translation tables used when performing a DMA operation into a single, combined translation table. To merge the translation tables, the computing device may update a register in the IOMMU to include a pointer to the combined translation table. In addition, the IOMMU may clear one of the registers from having a pointer to one of the merged translation table. Doing so means the entries in this translation table are now no longer assigned. The IOMMU may update the register with the pointer to the combined translation table to include the unassigned entries in the combined translation table. In this manner, the entries from the two translation tables are merged into the single, combined table. The combined translation table may be owned or assigned to a service provider that originally owned one of the merged translation tables or to a completely different service provider.Type: GrantFiled: August 22, 2013Date of Patent: August 11, 2015Assignee: International Business Machines CorporationInventors: Justin K. King, John R. Oberly, III, Travis J. Pizel
-
Patent number: 9092365Abstract: A computing device may split a translation table used when performing a DMA operation into two different translation tables. To split the translation table, the computing device may update the registers in the IOMMU to include pointers to the two different translation tables. For example, the IOMMU may update one register to point to the same starting address as the original translation table but assign a shorter length (i.e., fewer entries) to that table. The extra entries may then be used to form the other translation table by adding a new pointer to one of the IOMMU registers. The two translation tables may be owned by the same service provider or two different service providers. Alternatively, the computing device may assign the two tables to the same service provider which in turn assigns the tables to respective client devices executed by the service provider.Type: GrantFiled: August 22, 2013Date of Patent: July 28, 2015Assignee: International Business Machines CorporationInventors: Justin K. King, John R. Oberly, III, Travis J. Pizel
-
Patent number: 9092366Abstract: A computing device may split a translation table used when performing a DMA operation into two different translation tables. To split the translation table, the computing device may update the registers in the IOMMU to include pointers to the two different translation tables. For example, the IOMMU may update one register to point to the same starting address as the original translation table but assign a shorter length (i.e., fewer entries) to that table. The extra entries may then be used to form the other translation table by adding a new pointer to one of the IOMMU registers. The two translation tables may be owned by the same service provider or two different service providers. Alternatively, the computing device may assign the two tables to the same service provider which in turn assigns the tables to respective client devices executed by the service provider.Type: GrantFiled: October 18, 2013Date of Patent: July 28, 2015Assignee: International Business Machines CorporationInventors: Justin K. King, John R. Oberly, III, Travis J. Pizel
-
Publication number: 20150058593Abstract: A computing device may merge two translation tables used when performing a DMA operation into a single, combined translation table. To merge the translation tables, the computing device may update a register in the IOMMU to include a pointer to the combined translation table. In addition, the IOMMU may clear one of the registers from having a pointer to one of the merged translation table. Doing so means the entries in this translation table are now no longer assigned. The IOMMU may update the register with the pointer to the combined translation table to include the unassigned entries in the combined translation table. In this manner, the entries from the two translation tables are merged into the single, combined table. The combined translation table may be owned or assigned to a service provider that originally owned one of the merged translation tables or to a completely different service provider.Type: ApplicationFiled: August 22, 2013Publication date: February 26, 2015Applicant: International Business Machines CorporationInventors: Justin K. KING, John R. OBERLY, III, Travis J. PIZEL
-
Publication number: 20150058596Abstract: A computing device may merge two translation tables used when performing a DMA operation into a single, combined translation table. To merge the translation tables, the computing device may update a register in the IOMMU to include a pointer to the combined translation table. In addition, the IOMMU may clear one of the registers from having a pointer to one of the merged translation table. Doing so means the entries in this translation table are now no longer assigned. The IOMMU may update the register with the pointer to the combined translation table to include the unassigned entries in the combined translation table. In this manner, the entries from the two translation tables are merged into the single, combined table. The combined translation table may be owned or assigned to a service provider that originally owned one of the merged translation tables or to a completely different service provider.Type: ApplicationFiled: October 18, 2013Publication date: February 26, 2015Applicant: International Business Machines CorporationInventors: Justin K. KING, John R. OBERLY, III, Travis J. PIZEL