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: 20120124572Abstract: 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: ApplicationFiled: November 15, 2010Publication date: May 17, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: James B. Cunningham, Baltazar De Leon, III, Charles S. Graham, Brian J. King, Andrew T. Koch, Kyle A. Lucke, Kristopher C. Whitney
-
Patent number: 8139595Abstract: 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: GrantFiled: January 11, 2008Date of Patent: March 20, 2012Assignee: International Business Machines CorporationInventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III
-
Publication number: 20110321039Abstract: 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: ApplicationFiled: June 29, 2010Publication date: December 29, 2011Applicant: International Business Machines CorporationInventors: Baltazar De Leon, III, James B. Cunningham, Omar Cardona
-
Patent number: 8054848Abstract: 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: GrantFiled: May 19, 2009Date of Patent: November 8, 2011Assignee: International Business Machines CorporationInventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jeffrey P. Messing
-
Publication number: 20110264789Abstract: 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: ApplicationFiled: April 23, 2010Publication date: October 27, 2011Applicant: International Business Machines CorporationInventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Matthew Ochs
-
Publication number: 20110231406Abstract: 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: ApplicationFiled: March 19, 2010Publication date: September 22, 2011Applicant: International Business Machines CorporationInventors: Matthew R. Ochs, Omar Cardona, James B. Cunningham, Baltazar De Leon, III
-
Publication number: 20110103396Abstract: 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: ApplicationFiled: October 29, 2009Publication date: May 5, 2011Applicant: International Business Machines CorporationInventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jorge R. Nogueras
-
Publication number: 20110051734Abstract: 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: ApplicationFiled: September 3, 2009Publication date: March 3, 2011Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III, Jorge Rafael Nogueras
-
Publication number: 20100296518Abstract: 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: ApplicationFiled: May 19, 2009Publication date: November 25, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jeffrey P. Messing
-
Patent number: 7835373Abstract: 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: GrantFiled: March 30, 2007Date of Patent: November 16, 2010Assignee: International Business Machines CorporationInventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III
-
Publication number: 20100251268Abstract: 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: ApplicationFiled: March 30, 2009Publication date: September 30, 2010Applicant: International Business Machines CorporationInventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Matthew R. Ochs
-
Publication number: 20100153974Abstract: 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: ApplicationFiled: December 16, 2008Publication date: June 17, 2010Applicant: International Business Machines CorporationInventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jeffrey P. Messing
-
Patent number: 7715321Abstract: 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: GrantFiled: January 30, 2007Date of Patent: May 11, 2010Assignee: International Business Machines CorporationInventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III, Venkat Venkatsubra
-
Publication number: 20100020818Abstract: 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: ApplicationFiled: July 24, 2008Publication date: January 28, 2010Applicant: International Business Machines CorporationInventors: Omar Cardona, James B. Cunningham, Baltazar De Leon, III, Jeffrey P. Messing
-
Patent number: 7617438Abstract: 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: GrantFiled: April 15, 2004Date of Patent: November 10, 2009Assignee: International Business Machines CorporationInventors: Deanna Lynn Quigg Brown, Vinit Jain, Baltazar De Leon, III, Kyle Alan Lucke
-
Publication number: 20090249371Abstract: 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: ApplicationFiled: March 28, 2008Publication date: October 1, 2009Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III, Matthew Ryan Ochs
-
Publication number: 20090182967Abstract: 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: ApplicationFiled: January 11, 2008Publication date: July 16, 2009Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III
-
Publication number: 20080291933Abstract: 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: ApplicationFiled: May 21, 2007Publication date: November 27, 2008Inventors: OMAR CARDONA, James Brian Cunningham, Baltazar De Leon, III, Jeffrey Paul Messing
-
Publication number: 20080291835Abstract: 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: ApplicationFiled: May 21, 2007Publication date: November 27, 2008Inventors: Omar Cardona, James Brian Cunningham, Baltazar De Leon, III, Paul Nguyen