Patents by Inventor Baltazar De Leon, III

Baltazar De Leon, 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).

  • Publication number: 20120124572
    Abstract: A vendor independent partition interface between a logical partition and an adjunct partition associated with a self-virtualizing IO resource is used to effectively abstract away vender-specific interface details for the self-virtualizing IO resource. By doing so, vender-specific implementation details may be isolated from the operating systems resident in logical partitions, thus requiring only changes in vendor specific firmware in order to support new or revised self-virtualizing IO resources.
    Type: Application
    Filed: November 15, 2010
    Publication date: May 17, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: James B. Cunningham, Baltazar De Leon, III, Charles S. Graham, Brian J. King, Andrew T. Koch, Kyle A. Lucke, Kristopher C. Whitney
  • Patent number: 8139595
    Abstract: A computer implemented method, computer product code, and data processing system are provided for transferring data between virtual partitions. A request is received to transfer a packet from a first partition to a second partition. A free buffer is identified from a buffer pool of the second partition, and a receive descriptor is written. A bit within the receive descriptor is set to identify a receive descriptor ring of second partition. A first interrupt is generated to the second partition. The packet is then copied to the free buffer, and the receive descriptor is updated.
    Type: Grant
    Filed: January 11, 2008
    Date of Patent: March 20, 2012
    Assignee: International Business Machines Corporation
    Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III
  • Publication number: 20110321039
    Abstract: The method determines whether a particular virtual adapter of a virtual network IHS may perform enhanced packet communication transfer of larger sizes than those of physical network IHSs. The method registers each virtual adapter maximum receive unit (MRU) value in an MRU attribute table within a hypervisor virtual switch. The hypervisor virtual switch provides communication pathways for packet transfers between virtual network IHS virtual adapters and also between physical adapters. The method determines if a sending virtual adapter is sending a packet to a receiving virtual adapter that is local or a remote virtual trunk adapter. The method determines if the receiving virtual adapter exhibits a registered MRU value. If the receiving virtual adapter exhibits a registered MRU value, the method provides for larger sizes of packet transfers for those particular packets.
    Type: Application
    Filed: June 29, 2010
    Publication date: December 29, 2011
    Applicant: International Business Machines Corporation
    Inventors: Baltazar De Leon, III, James B. Cunningham, Omar Cardona
  • Patent number: 8054848
    Abstract: Methods and arrangements of data communications are discussed. Embodiments include transformations, code, state machines or other logic to provide data communications. An embodiment may involve receiving from a protocol stack a request for a buffer to hold data. The data may consist of all or part of a payload of a packet. The embodiment may also involve allocating space in a buffer for the data and for a header of a packet. The protocol stack may store the data in a portion of the buffer and hand down the buffer to a network device driver. The embodiment may also involve the network device driver transferring the entire packet from the buffer to a communications adapter in a single direct memory access (DMA) operation.
    Type: Grant
    Filed: May 19, 2009
    Date of Patent: November 8, 2011
    Assignee: International Business Machines Corporation
    Inventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jeffrey P. Messing
  • Publication number: 20110264789
    Abstract: A data processing system stack initializes a first mbuf chain limit to a pre-set level. It receives at least one packet. The system receives at least one packet. The system returns an mbuf data structure in response to receiving at least one packet from an IP address. The system measures a health of the network connection to determine whether the network connection satisfies a first health criterion. The system reduces the mbuf chain limit to a second mbuf chain limit, responsive to the health of the network connection not satisfying the first health criterion. The system measures the health of the network connection to determine whether the network connection meets a second health criterion.
    Type: Application
    Filed: April 23, 2010
    Publication date: October 27, 2011
    Applicant: International Business Machines Corporation
    Inventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Matthew Ochs
  • Publication number: 20110231406
    Abstract: An information handling system (IHS) includes a network adapter having a hardware address store that stores multicast addresses and a device driver that stores multicast addresses in a software address store. When there is no more storage space available in the hardware address store for multicast addresses, the device driver stores multicast addresses in the software address store. When the IHS receives a multicast information packet, the network adapter searches the hardware address store for a multicast address corresponding to that multicast information packet. If the search of the hardware address store does not find that multicast address, then the device driver searches the software address store for that multicast address. The IHS may prioritize the multicast addresses in the hardware address store and the software address store on a most frequently used basis, a most recently used basis or a most popular basis.
    Type: Application
    Filed: March 19, 2010
    Publication date: September 22, 2011
    Applicant: International Business Machines Corporation
    Inventors: Matthew R. Ochs, Omar Cardona, James B. Cunningham, Baltazar De Leon, III
  • Publication number: 20110103396
    Abstract: A method, system, and computer usable program product for selective link aggregation in a virtualized data processing environment are provided in the illustrative embodiments. A data packet is received at a switch. An identifier associated with the data packet is determined. The identifier corresponds to a logical partition in a logical partitioned data processing system. A lookup is performed in a data structure to determine a set of ports associated with the identifier. The set of ports is retrieved from the data structure. A port is selected from the set of ports and the data packet is transmitted from the port to the logical partition.
    Type: Application
    Filed: October 29, 2009
    Publication date: May 5, 2011
    Applicant: International Business Machines Corporation
    Inventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jorge R. Nogueras
  • Publication number: 20110051734
    Abstract: Where parallel links between network devices are aggregated into link groups to support the transport of associated data streams, the link groups can be managed in an energy efficient manner by defining each link group as consisting of a primary link and one or more secondary links. The primary link in a link group remains enabled at all times but the secondary links are enabled only when needed and are disabled when no longer needed, minimizing power consumption for the secondary links (and the link group).
    Type: Application
    Filed: September 3, 2009
    Publication date: March 3, 2011
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III, Jorge Rafael Nogueras
  • Publication number: 20100296518
    Abstract: Methods and arrangements of data communications are discussed. Embodiments include transformations, code, state machines or other logic to provide data communications. An embodiment may involve receiving from a protocol stack a request for a buffer to hold data. The data may consist of all or part of a payload of a packet. The embodiment may also involve allocating space in a buffer for the data and for a header of a packet. The protocol stack may store the data in a portion of the buffer and hand down the buffer to a network device driver. The embodiment may also involve the network device driver transferring the entire packet from the buffer to a communications adapter in a single direct memory access (DMA) operation.
    Type: Application
    Filed: May 19, 2009
    Publication date: November 25, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jeffrey P. Messing
  • Patent number: 7835373
    Abstract: A computer implemented method and apparatus are provided for transferring data in a logical partitioned data processing system. A receiving adapter receives data from a network. The receiving adapter transfers the data to a pre-mapped buffer if the data is to be sent to a target adapter. A virtual bridge receives the pre-mapped buffer from the receiving adapter and transfers the pre-mapped buffer to the target adapter. The target adapter receives the pre-mapped buffer from the virtual bridge and determines that the received buffer is pre-mapped. The target adapter accesses the pre-mapped buffer using pre-mapped mapping, and transmits the data contained therein.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: November 16, 2010
    Assignee: International Business Machines Corporation
    Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III
  • Publication number: 20100251268
    Abstract: Disclosed is a computer implemented method, computer program product, and apparatus to enqueue one or more packets in a device driver for an I/O adapter. A device driver receives, by a processor executing the device driver, a reference to a list of transmit packets. The device driver may then atomically fetch and set a transmit active flag, wherein atomically setting comprises determining a former status of the transmit active flag. Responsive to a determination that a former status of the transmit active flag is different than a current status of the transmit active flag, the device driver atomically removes, by a processor executing the device driver, any packets referenced by a host machine transmit queue reference. The device driver pre-pends transmit packets referenced by the host machine transmit queue reference to the list of transmit packets to form an augmented list of transmit packets. The device driver builds a work request based on the augmented list of transmit packets.
    Type: Application
    Filed: March 30, 2009
    Publication date: September 30, 2010
    Applicant: International Business Machines Corporation
    Inventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Matthew R. Ochs
  • Publication number: 20100153974
    Abstract: Disclosed is a computer implemented method, computer program product, and apparatus to obtain buffers in a multiprocessor system. A software component receives a call from an I/O device driver for a buffer, the call including at least one parameter, and walks a bucket data structure to a current bucket. The software component then determines whether the current bucket is free, and obtains a buffer list contained with the current bucket. Responsive to a determination that the current bucket is free, the software component determines whether sufficient buffers are obtained based on the parameter. Upon determining there are sufficient buffers obtained, the software component provides the current bucket and a second bucket as a single buffer list to the I/O device driver.
    Type: Application
    Filed: December 16, 2008
    Publication date: June 17, 2010
    Applicant: International Business Machines Corporation
    Inventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jeffrey P. Messing
  • Patent number: 7715321
    Abstract: A computer implemented method and data processing system for the detection and recovery of a network interface card TCP acceleration offload failure. Responsive to a failure to receive an acknowledgement of a transmission control protocol segment containing a request for a transmission control protocol offload function in a network interface card, the transmission control protocol segment is retransmitted without the request for a transmission control protocol offload function. When an acknowledgement of the retransmitted transmission control protocol segment without the request for a transmission control protocol offload function is received, a counter is incremented which indicates a failure of the transmission control protocol offload function. Responsive to the counter exceeding a predefined number of allowed failures, all requests to the transmission control protocol offload function for the network interface card are stopped.
    Type: Grant
    Filed: January 30, 2007
    Date of Patent: May 11, 2010
    Assignee: International Business Machines Corporation
    Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III, Venkat Venkatsubra
  • Publication number: 20100020818
    Abstract: In link aggregation configurations, a data packet may be copied into a buffer space of a first NIC. Load balancing techniques may determine that the packet should be transmitted by a second NIC. The packet exists in memory that the second NIC cannot access. The data packet is copied into memory accessible to the second NIC or the memory location of the packet is registered with the NIC. A copy penalty is incurred if a packet is copied from a first buffer space to a second buffer space. A registration penalty is incurred if the location within the first buffer space is registered with the second NIC. Functionality can be implemented within a link aggregation configuration to register buffer space shared among interconnected NICs. Sharing of buffer space between interconnected NICs allows any one of the NICs to access data within the shared buffer space without incurring a penalty.
    Type: Application
    Filed: July 24, 2008
    Publication date: January 28, 2010
    Applicant: International Business Machines Corporation
    Inventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jeffrey P. Messing
  • Patent number: 7617438
    Abstract: A method, apparatus, and computer instructions for processing a data packet in an interpartition virtual network in the logical partitioned data processing system. A state of a first flag and a state of a second flag is identified in the data packet, in response to receiving the data packet at a first partition in the interpartition virtual network from a second partition in the interpartition virtual network in the logical partitioned data processing system. A checksum is selectively verified for the data packet based on the state of the first flag and the state of the second flag.
    Type: Grant
    Filed: April 15, 2004
    Date of Patent: November 10, 2009
    Assignee: International Business Machines Corporation
    Inventors: Deanna Lynn Quigg Brown, Vinit Jain, Baltazar De Leon, III, Kyle Alan Lucke
  • Publication number: 20090249371
    Abstract: The present invention provides a computer implemented method and apparatus for allocating communication buffers in a data processing system. The method comprises a streamlined mbuf pool service receiving a call from an I/O device driver, then determining if at least one mbuf linked list is empty. In response to a determination that at least one mbuf linked list is empty, the streamlined mbuf pool service calls an OS mbuf allocator to provide all mbufs in a second mbuf linked list, wherein the second mbuf linked list comprises a head of the second mbuf linked list. The streamlined mbuf pool service repopulates the second mbuf linked list, obtains a requested mbuf from the second mbuf linked list, and advances the head of the second mbuf linked list by at least one mbuf. The streamlined mbuf pool service then returns the requested mbuf to the I/O device driver, wherein the OS mbuf allocator allocates all mbufs in the second mbuf linked list.
    Type: Application
    Filed: March 28, 2008
    Publication date: October 1, 2009
    Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III, Matthew Ryan Ochs
  • Publication number: 20090182967
    Abstract: A computer implemented method, computer product code, and data processing system are provided for transferring data between virtual partitions. A request is received to transfer a packet from a first partition to a second partition. A free buffer is identified from a buffer pool of the second partition, and a receive descriptor is written. A bit within the receive descriptor is set to identify a receive descriptor ring of second partition. A first interrupt is generated to the second partition. The packet is then copied to the free buffer, and the receive descriptor is updated.
    Type: Application
    Filed: January 11, 2008
    Publication date: July 16, 2009
    Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III
  • Publication number: 20080291933
    Abstract: A computer implemented method, apparatus, and computer usable program code for processing packets for transmission. A set of interface specific network buffers is identified from a plurality of buffers containing data for a packet received for transmission. A data structure describing the set of interface specific network buffers within the plurality of buffers is created, wherein a section in the data structure for an interface specific network buffer in the set of interface specific network buffers includes information about a piece of data in interface specific network buffer, wherein the data structure is used to process the packet for transmission.
    Type: Application
    Filed: May 21, 2007
    Publication date: November 27, 2008
    Inventors: OMAR CARDONA, James Brian Cunningham, Baltazar De Leon, III, Jeffrey Paul Messing
  • Publication number: 20080291835
    Abstract: A computer implemented method, apparatus, and computer usable program code for managing buffers. A number of buffers present in a pool of buffers assigned to a network device driver are monitored, wherein the buffers in the pool of buffers are used to process packets of data for transmission onto a network. A request is denied from a transport layer for a buffer from the pool of buffers if the number of buffers falls below a threshold level, wherein at least one buffer is present in a buffer pool if the number of buffers falls below the threshold level.
    Type: Application
    Filed: May 21, 2007
    Publication date: November 27, 2008
    Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III, Paul Nguyen