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: 8364871
    Abstract: A computer implemented method includes identifying a hardware input/output adapter in a first physical slot location. The computer implemented method includes determining that the hardware input/output adapter is capable of hosting a plurality of virtual functions in the first physical slot location. The computer implemented method also includes selecting a group identifier that is unassociated with another physical slot location. The computer implemented method includes associating the group identifier with the first physical slot location of the hardware input/output adapter.
    Type: Grant
    Filed: January 25, 2011
    Date of Patent: January 29, 2013
    Assignee: International Business Machines Corporation
    Inventors: Sean T. Brownlow, Bryan M. Logan, Gregory M. Nordstrom, John R. Oberly, III
  • Patent number: 8301806
    Abstract: A computer-implemented method includes initializing a driver associated with an input/output adapter in response to receiving an initialize driver request from a client application. The input/output adapter may be initialized to enable adapter capabilities of the input/output adapter to be determined. The computer-implemented method also includes determining the adapter capabilities of the input/output adapter and determining slot capabilities of a slot associated with the input/output adapter. The computer-implemented method further includes setting configurable capabilities of the input/output adapter based on the adapter capabilities and the slot capabilities.
    Type: Grant
    Filed: November 24, 2010
    Date of Patent: October 30, 2012
    Assignee: International Business Machines Corporation
    Inventors: Sean T. Brownlow, John R. Oberly, III
  • Publication number: 20120215947
    Abstract: A computer-implemented method includes initializing a driver associated with an input/output adapter in response to receiving an initialize driver request from a client application. The computer-implemented method includes initializing the input/output adapter to enable adapter capabilities of the input/output adapter to be determined. The computer-implemented method also includes determining the adapter capabilities of the input/output adapter. The computer-implemented method further includes determining slot capabilities of a slot associated with the input/output adapter. The computer-implemented method also includes setting configurable capabilities of the input/output adapter based on the adapter capabilities and the slot capabilities.
    Type: Application
    Filed: April 30, 2012
    Publication date: August 23, 2012
    Inventors: Sean T. Brownlow, John R. Oberly, III
  • Publication number: 20120215941
    Abstract: A computer implemented method includes receiving a request to access a configuration space that is associated with a virtual function. The request may include a configuration space address and a root complex identifier. The computer implemented method may include identifying a root complex based on the root complex identifier. The computer implemented method may also include selecting a slot that is associated with the root complex. The slot may be capable of coupling a hardware input/output adapter to the root complex. The computer implemented method may further include determining whether the configuration space address is associated with the selected slot. The computer implemented method may include accessing the configuration space using an access mechanism in response to determining that the configuration space address is associated with the selected slot.
    Type: Application
    Filed: February 21, 2011
    Publication date: August 23, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, John R. Oberly, III
  • Publication number: 20120192178
    Abstract: A computer-implemented method may include selecting a first virtual function that is hosted by a hardware input/output adapter and identifying a first logical partition that is associated with the first virtual function. The computer-implemented method may include retrieving first data corresponding to the first virtual function from a table in response to determining that the first logical partition has initiated a shutdown operation. The computer-implemented method may also include creating a first reset virtual function structure that includes at least a portion of the first data. The computer-implemented method may include sending the first reset virtual function structure to a dispatchable hypervisor.
    Type: Application
    Filed: January 26, 2011
    Publication date: July 26, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, John R. Oberly, III
  • Publication number: 20120191940
    Abstract: A method of configuring system memory may include determining a plurality of memory regions supportable on an input/output adapter. The input/output adapter may include a physical function. A memory region of the plurality of memory regions may be allocated to the physical function when an address of the physical function is unknown. The method may further include determining the address of the physical function and associating the address of the physical function with the memory region.
    Type: Application
    Filed: January 25, 2011
    Publication date: July 26, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, John R. Oberly, III, Timothy J. Torzewski
  • Publication number: 20120191884
    Abstract: A computer implemented method includes identifying a hardware input/output adapter in a first physical slot location. The computer implemented method includes determining that the hardware input/output adapter is capable of hosting a plurality of virtual functions in the first physical slot location. The computer implemented method also includes selecting a group identifier that is unassociated with another physical slot location. The computer implemented method includes associating the group identifier with the first physical slot location of the hardware input/output adapter.
    Type: Application
    Filed: January 25, 2011
    Publication date: July 26, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, Bryan M. Logan, Gregory M. Nordstrom, John R. Oberly, III
  • Publication number: 20120191935
    Abstract: A method of managing memory may include selecting an object of a memory heap to be de-allocated and initiating a deferred lock configured to delay de-allocation of the object. The deferred lock may be acquired in response to a thread leaving a computing space, and the object may be de-allocated.
    Type: Application
    Filed: January 26, 2011
    Publication date: July 26, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: John R. Oberly, III, Timothy J. Torzewski
  • Publication number: 20120179844
    Abstract: A computer-implemented method may include determining a number of virtual functions that each port of a hardware input/output adapter is capable of supporting. The computer-implemented method may include assigning a first portion of internal resources of the hardware input/output adapter to each port of the hardware input/output adapter. The computer-implemented method may also include, for a particular port of the hardware input/output adapter, assigning a second portion of the internal resources to each virtual function that the particular port is capable of supporting. The second portion of the internal resources may be a subset of the first portion of the internal resources. The computer-implemented method may further include configuring a virtual function prior to a runtime to use the assigned second portion of the internal resources.
    Type: Application
    Filed: January 11, 2011
    Publication date: July 12, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, Charles S. Graham, Kyle A. Lucke, John R. Oberly, III
  • Publication number: 20120180048
    Abstract: A method of assigning resources to an input/output adapter having multiple ports may include determining a first port of the input/output adapter that includes a first bandwidth availability. A first number of resources assigned to the first port may be modified. The method may further include comparing a total count of resources assigned the ports to a maximum number of resources, where the total count includes the modified first number of resources. At least a portion of the modified first number of resources to the first port may be allocated to the first port.
    Type: Application
    Filed: January 11, 2011
    Publication date: July 12, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, John R. Oberly, III
  • Publication number: 20120159245
    Abstract: Error handling is simplified for a self-virtualizing IO resource that utilizes a physical function adjunct partition for a physical function in the self-virtualizing IO resource to coordinate error recovery for the self-virtualizing IO resource, by restarting each virtual function adjunct partition associated with that physical function to avoid the need to coordinate error recovery within the logical partitions to which such virtual function adjunct partitions are assigned.
    Type: Application
    Filed: December 15, 2010
    Publication date: June 21, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, Charles S. Graham, Andrew T. Koch, Adam C. Lange-Pearson, Kyle A. Lucke, Gregory M. Nordstrom, John R. Oberly, III
  • Publication number: 20120131232
    Abstract: A computer-implemented method includes initializing a driver associated with an input/output adapter in response to receiving an initialize driver request from a client application. The input/output adapter may be initialized to enable adapter capabilities of the input/output adapter to be determined. The computer-implemented method also includes determining the adapter capabilities of the input/output adapter and determining slot capabilities of a slot associated with the input/output adapter. The computer-implemented method further includes setting configurable capabilities of the input/output adapter based on the adapter capabilities and the slot capabilities.
    Type: Application
    Filed: November 24, 2010
    Publication date: May 24, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, John R. Oberly, III
  • Publication number: 20120131590
    Abstract: 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: Application
    Filed: November 24, 2010
    Publication date: May 24, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sean T. Brownlow, John R. Oberly, III
  • Patent number: 7574551
    Abstract: Methods, systems, and products are disclosed for operating Peripheral Component Interconnect (‘PCI’) Express resources in a logically partitioned computing system that include: allocating, by a hypervisor installed on the computing system, a PCI Express adapter installed in the computing system to a logical partition of the computing system, including establishing a data communication path between a processor of the computing system and the PCI Express adapter, the data communication path including a link between a PCI Express root complex and the PCI Express adapter; and administering, by the hypervisor for the logical partition, the PCI Express root complex and the link between the PCI Express root complex and the PCI Express adapter.
    Type: Grant
    Filed: March 23, 2007
    Date of Patent: August 11, 2009
    Assignee: International Business Machines Corporation
    Inventors: Raghuswamyreddy Gundam, Gregory M. Nordstrom, John R. Oberly, III, Vikramjit Sethi