Patents by Inventor Renato Recio

Renato Recio 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: 20060265521
    Abstract: The present invention provides a system, method, and computer program product that enables application instances to pass block mode storage requests directly to a physical I/O adapter without run-time involvement from the local operating system or hypervisor. In one aspect of the present invention, a mechanism is provided for handling user space creation and deletion operations for creating and deleting allocations of linear block addresses of a physical storage device to application instances. For creation, it is determined if there are sufficient available resources for creation of the allocation. For deletion, it is determined if there are any I/O transactions active on the allocation before performing the deletion. Allocation may be performed only if there are sufficient available resources and deletion may be performed only if there are no active I/O transactions on the allocation being deleted.
    Type: Application
    Filed: May 23, 2005
    Publication date: November 23, 2006
    Inventors: William Boyd, John Hufferd, Agustin Mena, Renato Recio, Madeline Vega
  • Publication number: 20060262782
    Abstract: A method for receiving data in a network acceleration architecture for use with TCP (transport control protocol), iSCSI (Internet Small Computer System Interface) and RDMA (Remote Direct Memory Access) over TCP, including providing a hardware acceleration engine, called a streamer, adapted for communication with and processing data from a consumer application in a system that supports TCP, iSCSI and RDMA over TCP, providing a software protocol processor adapted for carrying out TCP implementation, the software control processor being called a TCE (TCP Control Engine), and providing an asynchronous dual-queue interface for exchanging information between the streamer and TCE, wherein the streamer and TCE are adapted to operate asynchronously and independently of one another.
    Type: Application
    Filed: May 19, 2005
    Publication date: November 23, 2006
    Applicant: International Business Machines Corporation
    Inventors: Giora Biran, Zorik Machulsky, Vadim Makhervaks, Renato Recio, Julian Satran, Leah Shalev, Ilan Shimony
  • Publication number: 20060262796
    Abstract: A network acceleration architecture for use with TCP, iSCSI and/or RDMA over TCP, including a hardware acceleration engine adapted for communication with and processing data from a consumer application in a system that supports TCP, iSCSI and RDMA over TCP, a software protocol processor adapted for carrying out TCP implementation, and an asynchronous dual-queue interface for exchanging information between the hardware acceleration engine and the software protocol processor, wherein the hardware acceleration engine and the software protocol processor are adapted to operate asynchronously and independently of one another.
    Type: Application
    Filed: May 18, 2005
    Publication date: November 23, 2006
    Applicant: International Business Machines Corporation
    Inventors: Giora Biran, Zorik Machulsky, Vadim Makhervaks, Renato Recio, Julian Satran, Leah Shalev, Ilan Shimony
  • Publication number: 20060265525
    Abstract: The present invention provides a system, method, and computer program product that enables user space middleware or applications to pass block mode storage requests directly to a physical I/O Adapter without run-time involvement from the local Operating System (OS), or, in a virtual system, the local Hypervisor. Specifically, the present invention is directed to a mechanism for providing and using a linear block address (LBA) translation protection table (TPT) to control user space and out of user space Input/Output (I/O) operations. In one aspect of the present invention, the LBATPT includes an adapter protection table that has entries for each portion of a storage device. Each entry may include a key instance and protection domain, along with other protection table context information, against which I/O requests may be checked to determine if an application instance that submitted the I/O requests may access the LBAs identified in the I/O requests.
    Type: Application
    Filed: May 23, 2005
    Publication date: November 23, 2006
    Inventors: William Boyd, John Hufferd, Agustin Mena, Renato Recio, Madeline Vega
  • Publication number: 20060265522
    Abstract: The present invention provides a system, method, and computer program product that enables application instances to pass block mode storage requests directly to a physical I/O adapter without run-time involvement from the local operating system or hypervisor. In one aspect of the present invention, a mechanism is provided for handling user space query and modification operations for querying and modifying attributes of allocations of linear block addresses of a physical storage device. For modification, it is determined if there are sufficient available resources for the modification of the allocation. In addition, it is determined if there are any I/O transactions active on the allocation before performing the modification. Modification of the attributes of the allocation may be performed only if there are sufficient available resources and only if there are no active I/O transactions on the allocation being modified.
    Type: Application
    Filed: May 23, 2005
    Publication date: November 23, 2006
    Inventors: William Boyd, John Hufferd, Agustin Mena, Renato Recio, Madeline Vega
  • Publication number: 20060265561
    Abstract: The present invention provides a system, method, and computer program product that enables application instances to pass block mode storage requests directly to a physical I/O adapter without run-time involvement from the local operating system or hypervisor. Specifically, a mechanism for providing and using a linear block address (LBA) translation protection table (TPT) to control out of user space I/O operations is provided. In one aspect of the present invention, the LBATPT includes an adapter protection table that has entries for each portion of a storage device. Entries include access control values which identify whether the entry is valid and what access type operations may be performed on a corresponding portion of a storage device. I/O requests may be checked against these access control values to determine if an application instance that submitted the I/O requests may access the LBAs identified in the I/O requests in the manner requested.
    Type: Application
    Filed: May 23, 2005
    Publication date: November 23, 2006
    Inventors: William Boyd, John Hufferd, Agustin Mena, Renato Recio, Madeline Vega
  • Publication number: 20060262797
    Abstract: A method for receiving data in a network acceleration architecture for use with TCP (transport control protocol), iSCSI (Internet Small Computer System Interface) and RDMA (Remote Direct Memory Access) over TCP, including providing a hardware acceleration engine, called a streamer, adapted for communication with and processing data from a consumer application in a system that supports TCP, iSCSI and RDMA over TCP, providing a software protocol processor adapted for carrying out TCP implementation, the software control processor being called a TCE (TCP Control Engine), wherein the streamer and the TCE are adapted to operate asynchronously and independently of one another, and receiving an inbound TCP segment with the streamer.
    Type: Application
    Filed: May 18, 2005
    Publication date: November 23, 2006
    Applicant: International Business Machines Corporation
    Inventors: Giora Biran, Zorik Machulsky, Vadim Makhervaks, Renato Recio, Julian Satran, Leah Shalev, Ilan Shimony
  • Publication number: 20060259644
    Abstract: A mechanism for offloading the management of receive queues in a split (e.g. split socket, split iSCSI, split DAFS) stack environment, including efficient queue flow control and TCP/IP retransmission support. An Upper Layer Protocol (ULP) creates receive work queues and completion queues that are utilized by an Internet Protocol Suite Offload Engine (IPSOE) and the ULP to transfer information and carry out send operations. As consumers initiate receive operations, receive work queue entries (RWQEs) are created by the ULP and written to the receive work queue (RWQ). The ISPOE is notified of a new entry to the RWQ and it subsequently reads this entry that contains pointers to the data that is to be received. After the data is received, the IPSOE creates a completion queue entry (CQE) that is written into the completion queue (CQ). After the CQE is written, the ULP subsequently processes the entry and removes it from the CQE, freeing up a space in both the RWQ and CQ.
    Type: Application
    Filed: July 14, 2006
    Publication date: November 16, 2006
    Inventors: William Boyd, Jean Calvignac, Chih-Jen Chang, Douglas Joseph, Renato Recio
  • Publication number: 20060224790
    Abstract: A method, computer program product, and distributed data processing system for directly destroying the resources associated with one or more virtual adapters that reside within a physical adapter is provided. A mechanism is provided for directly destroying the resources associated with one or more virtual adapters that reside within a physical adapter, such as a PCI, PCI-X, or PCI-E adapter.
    Type: Application
    Filed: February 25, 2005
    Publication date: October 5, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Giora Biran, Harvey Kiel, Vadim Makhervaks, Renato Recio, Leah Shalev, Jaya Srikrishnan
  • Publication number: 20060218316
    Abstract: A method, computer program product, and a data processing system for posting and retrieving WQEs to a shared receive queue in a manner that alleviates head-of-line blocking issues is provided. The present invention provides a shared receive queue and a posting routine for allowing non-sequential work request postings in the shared receive queue. Additionally, a fetch routine is provided for non-sequential fetching of work queue elements from the shared receive queue.
    Type: Application
    Filed: March 22, 2005
    Publication date: September 28, 2006
    Applicant: International Business Machines Corporation
    Inventors: Giora Biran, John Hufferd, Zorik Machulsky, Vadim Makhervaks, Renato Recio
  • Publication number: 20060212608
    Abstract: A method, computer program product, and distributed data processing system that allows a single physical I/O adapter to validate that a memory mapped I/O address referenced by an incoming I/O operation is associated with a virtual host that initiated the incoming memory mapped I/O operation is provided. Specifically, the present invention is directed to a mechanism for sharing a PCI family I/O adapter and, in general, any I/O adapter that uses a memory mapped I/O interface for communications. A mechanism is provided that allows a single physical I/O adapter to validate that a memory mapped I/O address referenced by an incoming memory mapped I/O operation used to initiate an I/O transaction is associated with a virtual host that initiated the incoming memory mapped I/O operation.
    Type: Application
    Filed: February 25, 2005
    Publication date: September 21, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Giora Biran, Harvey Kiel, Vadim Makhervaks, Renato Recio, Leah Shalev, Jaya Srikrishnan
  • Publication number: 20060212563
    Abstract: A mechanism for offloading the management of send queues in a split socket stack environment, including efficient split socket queue flow control and TCP/IP retransmission support. As consumers initiate send operations, send work queue entries (SWQEs) are created by an Upper Layer Protocol (ULP) and written to the send work queue (SWQ). The Internet Protocol Suite Offload Engine (IPSOE) is notified of a new entry to the SWQ and it subsequently reads this entry that contains pointers to the data that is to be transmitted. After the data is transmitted and acknowledgments are received, the IPSOE creates a completion queue entry (CQE) that is written into the completion queue (CQ). After the CQE is written, the ULP subsequently processes the entry and removes it from the CQE, freeing up a space in both the SWQ and CQ. The number of entries available in the SWQ are monitored by the ULP so that it does not overwrite any valid entries.
    Type: Application
    Filed: May 5, 2006
    Publication date: September 21, 2006
    Inventors: William Boyd, Jean Calvignac, Chih-Jen Chang, Douglas Joseph, Renato Recio
  • Publication number: 20060209863
    Abstract: An enhanced fibre channel adapter with multiple queues for use by different server processors or partitions. For a non-partitioned server, the OS owns the adapter, controls the adapter queues, and updates the queue table(s). An OS operator can obtain information from the fibre channel network about the fibre channel storage data zones available to the physical fibre channel adapter port and can specify that one or more zones can be accessed by a specific processor or group of processors. The processor or group of processors is given an adapter queue to access the zone or zones of storage data. This queue is given a new World Wide Port Name or new N-Port ID Virtualization identifier, to differentiate this queue from another queue that might have access to a different storage data zone or zones. For a partitioned server, one partition owns the adapter, controls the adapter queues, and updates the queue table(s).
    Type: Application
    Filed: February 25, 2005
    Publication date: September 21, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Patrick Buckland, Harvey Kiel, Renato Recio, Jaya Srikrishnan
  • Publication number: 20060212606
    Abstract: A mechanism that allows a single physical I/O adapter, such as a PCI, PCI-X, or PCI-E adapter, to perform I/O transactions using the PCI host bus, device, and function numbers to validate that an I/O transaction originated from the proper host is provided. Additionally, a method for facilitating identification of a transaction source partition is provided. An input/output transaction that is directed to a physical adapter is originated from a system image of a plurality of system images. The host data processing system adds an identifier of the system image to the input/output transaction. The input/output transaction is then conveyed to the physical adapter for processing of the input/output transaction.
    Type: Application
    Filed: February 25, 2005
    Publication date: September 21, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Giora Biran, Patrick Buckland, Harvey Kiel, Vadim Makhervaks, Renato Recio, Leah Shalev, Jaya Srikrishnan
  • Publication number: 20060212620
    Abstract: A method, computer program product, and distributed data processing system that enables host software or firmware to allocate virtual resources to one or more system images from a single physical I/O adapter, such as a PCI, PCI-X, or PCI-E adapter, is provided. Adapter resource groups are assigned to respective system images. An adapter resource group is exclusively available to the system image to which the adapter resource group assignment was made. Assignment of adapter resource groups may be made per a relative resource assignment or an absolute resource assignment. In another embodiment, adapter resource groups are assigned to system images on a first come, first served basis.
    Type: Application
    Filed: February 25, 2005
    Publication date: September 21, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Giora Biran, Harvey Kiel, Vadim Makhervaks, Renato Recio, Leah Shalev, Jaya Srikrishnan
  • Publication number: 20060212870
    Abstract: A method, system, and computer program product for sharing adapter resources among multiple operating system instances. The present invention provides a mechanism for dynamically allocating virtualized I/O adapter resources. The present invention separates the operation of adapter resource allocation from adapter resource management. Protection attributes within the adapter resource context are used to allow the adapter to enforce access control over the adapter resources. The hypervisor allocates an available adapter resource to a given partition. The adapter is notified of the allocation, and the adapter updates its internal structure to reflect the allocation. The hypervisor may revoke ownership of and reassign adapter resources to another OS instance. In this manner, the allocation described above allows for the simple reassignment of resources from one partition to another.
    Type: Application
    Filed: February 25, 2005
    Publication date: September 21, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Giora Biran, Harvey Kiel, Vadim Makhervaks, Renato Recio, Leah Shalev, Jaya Srikrishnan
  • Publication number: 20060209724
    Abstract: A method, computer program product, and distributed data processing system that allows a single physical I/O adapter, such as a PCI, PCI-X, or PCI-E adapter, to validate that a direct memory access address referenced by an incoming I/O transaction that was initiated through a memory mapped I/O operation are associated with a virtual adapter or virtual resource that is referenced by the incoming memory mapped I/O operation is provided. Specifically, the present invention is directed to a mechanism for sharing conventional PCI (Peripheral Component Interconnect) I/O adapters, PCI-X I/O Adapters, PCI-Express I/O Adapters, and, in general, any I/O adapter that uses a memory mapped I/O interface for communications. A single physical I/O adapter validates that one or more direct memory access addresses referenced by an incoming I/O transaction initiated through a memory mapped I/O operation are associated with a virtual adapter or virtual resource that is referenced by the incoming memory mapped I/O operation.
    Type: Application
    Filed: February 28, 2005
    Publication date: September 21, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Giora Biran, Harvey Kiel, Vadim Makhervaks, Renato Recio, Leah Shalev, Jaya Srikrishnan
  • Publication number: 20060195673
    Abstract: A method, apparatus, and computer program product are disclosed in a shared processor data processing system for coordinating error reporting for and resetting of a physical I/O adapter that supports virtualization. The physical I/O adapter is virtualized by generating virtual I/O adapters that each represent a portion of the physical I/O adapter. Each one of the virtual I/O adapters is assigned to a different one of client logical partitions. A determination is made regarding whether the physical I/O adapter may have experienced an error. If the physical I/O adapter has experienced an error, all of the client logical partitions are notified about the error and a recovery of the physical I/O adapter is coordinated among all of the client logical partitions by waiting for each client logical partition to acknowledge the error notification before the physical I/O adapter is reset.
    Type: Application
    Filed: February 25, 2005
    Publication date: August 31, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Patrick Buckland, Harvey Kiel, Renato Recio, Jaya Srikrishnan
  • Publication number: 20060195634
    Abstract: A mechanism for modifying resources in a logically partitioned data processing system is provided. A request to modify resources associated with a virtual adapter allocated on a physical adapter is invoked. The resources associated with the virtual adapter comprise a subset of the physical adapter resources. The request to modify the physical adapter is conveyed to the physical adapter. Responsive to receipt of the request by the physical adapter, the physical adapter modifies the resources allocated to the virtual adapter.
    Type: Application
    Filed: February 25, 2005
    Publication date: August 31, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Giora Biran, Patrick Buckland, Harvey Kiel, Vadim Makhervaks, Renato Recio, Leah Shalev, Jaya Srikrishnan
  • Publication number: 20060193327
    Abstract: A method, computer program product, and distributed data processing system for associating a quality of service level to one or more virtual I/O adapters or virtual resources that reside within a physical adapter and are associated with a virtual host is provided. Specifically, a mechanism by which a single physical I/O adapter associates one or more virtual I/O adapters or virtual resources to a quality of service level is provided.
    Type: Application
    Filed: February 25, 2005
    Publication date: August 31, 2006
    Applicant: International Business Machines Corporation
    Inventors: Richard Arndt, Harvey Kiel, Renato Recio, Jaya Srikrishnan