Patents by Inventor Jacobo A. Vargas

Jacobo A. Vargas 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: 20090106771
    Abstract: A system and method for providing a memory region/memory window (MR/MW) access notification on a system area network are provided. Whenever a previously allocated MR/MW is accessed, such as via a remote direct memory access (RDMA) read/write operation, a notification of the access is generated and written to a queue data structure associated with the MR/MW. In one illustrative embodiment, this queue data structure may be a MR/MW event queue (EQ) data structure that is created and used for all consumer processes and all MR/MWs. In other illustrative embodiments, the EQ is associated with a protection domain. In yet another illustrative embodiment, an event record may be posted to an asynchronous event handler in response to the accessing of the MR/MW. In another illustrative embodiment, a previously posted queue element may be used to generate a completion queue element in response to the accessing of the MR/MW.
    Type: Application
    Filed: October 23, 2007
    Publication date: April 23, 2009
    Inventors: Alan F. Benner, Michael A. Ko, Gregory F. Pfister, Renato J. Recio, Jacobo A. Vargas
  • Patent number: 7500051
    Abstract: A computer implemented method, data processing system, and computer usable program code are provided for migrating a persistent cache. A priming request is received at an intermediary to prime the persistent cache of a first partition. Data is moved from a disk to the persistent cache and, responsive to the data being moved to the persistent cache, an unmounting command is issued to unmount a first file system in the first partition from the persistent cache. A mounting command is then issued to mount a second file system in a second partition to the persistent cache, wherein the second partition may now use the data contained in the persistent cache.
    Type: Grant
    Filed: September 13, 2006
    Date of Patent: March 3, 2009
    Assignee: International Business Machines Corporation
    Inventors: Renato J. Recio, Johnny Meng-Han Shieh, Jacobo A. Vargas
  • Publication number: 20080192750
    Abstract: A system and method for preventing IP spoofing and facilitating parsing of private data areas in system and network connection requests are provided. With the system and method, an identifier, such as the high order bit of a Q_Key, is utilized to determine if a communication connection request originates with a privileged process. A second identifier is used to specify whether a private data area of a communication connection request utilizes predefined fields of a predefined structure or format. Only when the first identifier specifies that the request originates from a privileged process is the processing of the request permitted to be performed. Based on the setting of the second identifier, specific information is retrieved from the predefined fields of the private data area for use in establishing the requested communication connection.
    Type: Application
    Filed: February 13, 2007
    Publication date: August 14, 2008
    Inventors: Michael A. Ko, Renato J. Recio, Jacobo A. Vargas
  • Publication number: 20080168471
    Abstract: A system and method for collective send operations on a system area network are provided. The mechanisms of the illustrative embodiments provide for the creation, modification, and removal of collective send queues (CSQs) that allow the upper level protocol (ULP) used by a consumer to send the same message to a collective set of queue pairs (QPs). In order to use the transport services of a CSQ, a consumer process posts a write work request (WR) to the CSQ. The write WR causes a write work queue element (WQE) to be generated and placed in the CSQ. A channel interface (CI) is provided that effectively copies the write WQE to all of the send queues (SQs) of the QPs in the QP set associated with the CSQ. When all the QPs complete processing of their respective write WQEs, the HCA releases all data segments referenced by the write WR.
    Type: Application
    Filed: January 10, 2007
    Publication date: July 10, 2008
    Inventors: Alan F. Benner, Michael A. Ko, Gregory F. Pfister, Renato J. Recio, Jacobo A. Vargas
  • Publication number: 20080148295
    Abstract: A system and method for migration of single root stateless virtual functions are provided. A Single-Root PCI Configuration Manager (SR-PCIM) provides a system image (SI) with possible virtual function (VF) migration scenarios supported by the endpoint (EP). The SR-PCIM may be instructed that a stateless migration of a VF and its associated application(s) from one SI to another is required. Outstanding requests to the VF are completed and any applications associated with the VF are removed from the SI and the VF is detached from its associated physical function (PF). The SWI may then attach the VF to a target PF which may be in the same or a different EP. The SWI makes the VF available to the SI with which the VF is now associated and the SI configures the VF thereby making it available for use by associated applications.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M. Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080147937
    Abstract: A system and method for hot-plug/remove of a new component in a running communication fabric, such as a PCIe fabric, are provided. With the system and method, the addition of a new component in the fabric is detected and an event is sent to a multiple root fabric configuration manager. The multiple root fabric configuration manager gathers information about the new component and updates its I/O component tree structure in its configuration data structure to include the new component. The new component may then be utilized via the updated configuration data structure. When a component is to be removed, the multiple root fabric configuration manager receives an event indicating the component to be removed, determines which branches of the tree structure are affected by the removal, and updates its configuration data structure accordingly to remove the component and its associated components from the virtual plane of the removed component.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M. Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080147887
    Abstract: A system and method for migration of stateless virtual functions from one virtual plane to another are provided. When a migration of a source virtual function to a destination virtual function in another virtual plane is to be performed, a source single root PCI manager (SR-PCIM) is first interrupted by a multiple root PCI manager (MR-PCIM). Configuration information that defines the source virtual function is then redefined on the destination virtual function for this stateless migration. A function level reset may then be performed on the source virtual function. The destination SR-PCIM may be interrupted by the MR-PCIM with an interrupt for the destination virtual function. A function level reset may then be performed on the destination virtual function. The destination virtual function state may then be changed to an “active” state such that the migrated virtual function begins processing transactions.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080147943
    Abstract: A system and method for migration of a virtual endpoint from one virtual plane to another are provided. With the system and method, when a management application requests migration of a virtual endpoint (VE) from one virtual plane (VP) to another, a fabric manager provides an input/output virtualization intermediary (IOVI) with an interrupt to perform a stateless migration. The IOVI quiesces outstanding requests to the virtual functions (VFs) of the VE, causes a function level reset of the VFs, deconfigures addresses in intermediary switches corresponding to the VP, and informs the fabric manager that a destination migration is requested. The fabric manager sends an interrupt to the destination IOVI which performs a function level reset of the destination VFs and reprograms the intermediary switches with the addresses of the destination VP. The destination VFs may then be placed in an active state.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080147898
    Abstract: A system and method for registering combinations of physical and/or virtual functions for configuring an endpoint are provided. With the system and method, a mechanism informs a management component of a multifunction endpoint's functional combinations. The management component may then use this information to select the functional combinations that are to be made visible to each system image. The informing of the management component may be performed by writing values to various predefined fields in a configuration space for a physical or virtual function that provides information regarding the number of virtual functions supported, the combination of functions supported, a nominal combination of virtual functions to be used by the physical function, and a group identifier for identifying which functions are linked in a combination grouping.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M. Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080147959
    Abstract: A system and method for initializing shared memories for sharing endpoints across a plurality of root complexes is provided. In one illustrative embodiment, a multi-root PCIe manager (MR-PCIM) initializes the shared memory between root complexes and endpoints by discovering the PCIe switch fabric by traversing all the links accessible through the interconnected switches of the PCIe switch fabric. As the links are traversed, the MR-PCIM compares information obtained for each of the root complexes and endpoints to determine which endpoints and root complexes reside on the same blade. A virtual PCIe tree data structure is then generated that ties the endpoints available on the PCIe switch fabric to each root complex. The MR-PCIM, or a single-root PCIe manager (SR-PCIM), may then assign each endpoint and root complex a base and limit within the PCIe memory address space the endpoint belongs to.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M. Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080147938
    Abstract: A system and method for communication between host systems using a transaction protocol and shared memories are provided. Shared memories are initialized based on a discovery process in a communication fabric such that at least one endpoint has address ranges in shared memories of at least two host systems. A transaction oriented protocol may be established for using the shared memories of the host systems to communicate between root complexes and endpoints of the same or different host systems. The transaction oriented protocol specifies a series of transactions to be performed by the various elements, e.g., root complex or endpoint, to push or pull data. Various combinations of push and pull transactions may be utilized.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080147904
    Abstract: A system and method for communication between host systems using a socket connection and shared memories are provided. With such socket-based communication, a work queue in the host systems may be used to listen for incoming socket initialization requests. A first host system that wishes to establish a socket communication connection with a second host system may generate a socket initialization request work queue element in its work queue and may inform the second host system that the socket initialization request work queue element is available for processing. The second host system may then accept or deny the request. If the second host system accepts the request, it returns the second half of the socket's parameters for use by the first host system in performing socket based communications between the first and second host systems.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M. Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080148032
    Abstract: A system and method for communication between host systems using a queuing system and shared memories are provided. Memory address spaces of the host systems are initialized such that endpoints may be accessible by root complexes across host systems. These memory address spaces may then be used to allow system images, and their corresponding applications, associated with these root complexes to communicate with the endpoints using a queuing system. Such a queuing system may comprise queue structures having doorbell structures for providing information about the queue entries in the queue structures. Queue elements may be generated and added to the queue structures, and the doorbell structure may be written to, in order to thereby inform an endpoint or root complex that queue elements are available for processing. DMA operations may be performed to retrieve the queue elements and the data corresponding to the queue elements.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Inventors: Douglas M. Freimuth, Renato J. Recio, Claudia A. Salzberg, Steven M. Thurber, Jacobo A. Vargas
  • Publication number: 20080065826
    Abstract: A computer implemented method, data processing system, and computer usable program code are provided for migrating a persistent cache. A priming request is received at an intermediary to prime the persistent cache of a first partition. Data is moved from a disk to the persistent cache and, responsive to the data being moved to the persistent cache, an unmounting command is issued to unmount a first file system in the first partition from the persistent cache. A mounting command is then issued to mount a second file system in a second partition to the persistent cache, wherein the second partition may now use the data contained in the persistent cache.
    Type: Application
    Filed: September 13, 2006
    Publication date: March 13, 2008
    Inventors: Renato J. Recio, Johnny Meng-Han Shieh, Jacobo A. Vargas
  • Publication number: 20070177611
    Abstract: An audio application program is isolated from an Internet application program in a cell phone system having a processor. An operating system program, a partition manager process and the audio and Internet application programs are stored in a computer readable memory of the cell phone. The method includes executing the partition manager process, the audio application program and the Internet application program by the cell phone system processor. Executing the partition manager process includes the partition manager process controlling the audio application program executing to be associated with a first executing instance of the cell phone operating system and the Internet application program executing to be associated with a second executing instance of the cell phone operating system, so that the audio application program is isolated from the Internet application program.
    Type: Application
    Filed: January 30, 2006
    Publication date: August 2, 2007
    Inventors: William Armstrong, Richard Arndt, Renato Recio, James Rymarczyk, Jacobo Vargas
  • Publication number: 20070038806
    Abstract: A non-mechanical persistent storage is provided for a mechanical storage device. The operating system instructs the mechanical storage device to cache ranges of data stored in the mechanical storage device in the non-mechanical persistent storage. The mechanical storage device then transfers the data to the non-mechanical persistent storage. When the operating system makes a write to a range that is tracked in the non-mechanical persistent storage, the data is written to the mechanical storage and mirrored to the non-mechanical persistent storage. When the operating system makes a read to a range that is tracked in the non-mechanical persistent storage, such as when the system is in startup, the data is read from the non-mechanical persistent cache.
    Type: Application
    Filed: August 11, 2005
    Publication date: February 15, 2007
    Inventors: Renato Recio, Johnny Shieh, Jacobo Vargas