Patent application number | Description | Published |
20090055831 | Allocating Network Adapter Resources Among Logical Partitions - In an embodiment, a network adapter has a physical port that is multiplexed to multiple logical ports, which have default queues. The adapter also has other queues, which can be allocated to any logical port, and resources, which map tuples to queues. The tuples are derived from data in packets received via the physical port. The adapter determines which queue should receive a packet based on the received tuple and the resources. If the received tuple matches a resource, then the adapter stores the packet to the corresponding queue; otherwise, the adapter stores the packet to the default queue for the logical port specified by the packet. In response to receiving an allocation request from a requesting partition, if no resources are idle, a resource is selected for preemption that is already allocated to a selected partition. The selected resource is then allocated to the requesting partition. | 02-26-2009 |
20090210646 | Cross Adapter Shared Address Translation Tables - A method, computer program product and computer system for allocating shared address translation tables for memory regions of multiple I/O adaptors, which includes allocating an address translation table to be shared between the memory regions, creating a hardware context for each memory region, and sharing the address translation table across multiple adaptors. | 08-20-2009 |
20090222640 | Memory Migration in a Logically Partitioned Computer System - A method and apparatus migrates partition memory in a logically partitioned computer system by utilizing input/output (I/O) space located outside the logical memory blocks (LMBs) to be migrated. The transmit/receive (X/R) queues that are used by network storage adapters and any fixed memory items such as transmit/receive buffers are placed outside the logical memory blocks (LMBs) of the partition. Without the fixed memory items, these LMBs may be migrated without affecting the operation of the network storage adapters or the software in partition memory. The I/O space may be placed outside the partition in a specialized LMB that holds fixed memory items for one or more I/O adapters. | 09-03-2009 |
20090319728 | Virtualized SAS Adapter with Logic Unit Partitioning - A method, computer program product and computer system for virtualizing an SAS storage adapter, so as to allow logical partitions of a computer system to share a storage device. The method, computer program product and computer system includes assigning a logical storage adapter to an operating system of each of the logical partitions; creating a mapping from each of the logical partitions to a set of logical blocks in the storage device; and configuring the logical storage adapter using a hypervisor, so that a select partition can access a select set of logical blocks that the select partition is allowed to access. | 12-24-2009 |
20090327537 | Virtualized Serial Attached SCSI Adapter - A method, computer program product and computer system for the virtualization of an SAS storage adapter for logical partitions of a computer system, which includes providing a hypervisor, assigning a logical storage adapter to an operating system on one of the logical partitions, configuring the logical storage adapter using the hypervisor, and enabling data storage operations to use the logical storage adapter. | 12-31-2009 |
20100027423 | Controlling Data Flow Through A Data Communications Link - Controlling data flow through a data communications link, the link operating according to a data communications protocol in which a receiver of data communications on the link can suspend data communications on the link for a period of time determined by the receiver, including specifying for the sender a duration for flow control periods; specifying for the sender a number of corrupt communications control packets to be transmitted from the sender to the receiver during a flow control period; determining by the sender whether a flow control message is received from the receiver during a flow control period; altering, in dependence upon whether a flow control message is received from the receiver during a flow control period, the number of corrupt communications control packets; and transmitting, among normal data communications during a subsequent flow control period, the altered number of corrupt communications control packets from the sender to the receiver. | 02-04-2010 |
20100095080 | Data Communications Through A Host Fibre Channel Adapter - Data communications through a host Fibre Channel adapter (‘HFCA’) implemented with a computer that includes two or more logical partitions, each logical partition including a separate instance of an operating system, each instance of an operating system including an instance of a low-level, switched fabric input/output (‘I/O’) library, including establishing, in the HFCA by instances of the I/O library in two or more logical partitions and by the hypervisor, separate logical Fibre Channel adapters (‘LFCAs’) for at least two of the logical partitions, each LFCA including an association of an LFCA identifier with at least one range of I/O memory addresses in the address space of a logical partition and transferring, at the behest of application programs in the two or more logical partitions, data between the RAM of the logical partitions and the data storage devices through the LFCAs, the HFCA, and the Fibre Channel fabric. | 04-15-2010 |
20100191822 | Broadcasting Data In A Hybrid Computing Environment - Methods, apparatus, and products for broadcasting data in a hybrid computing environment that includes a host computer, a number of accelerators, the host computer and the accelerators adapted to one another for data communications by a system level message passing module, the host computer having local memory shared remotely with the accelerators, the accelerators having local memory for the accelerators shared remotely with the host computer, where broadcasting data according to embodiments of the present invention includes: writing, by the host computer remotely to the shared local memory for the accelerators, the data to be broadcast; reading, by each of the accelerators from the shared local memory for the accelerators, the data; and notifying the host computer, by the accelerators, that the accelerators have read the data. | 07-29-2010 |
20100191823 | Data Processing In A Hybrid Computing Environment - Data processing in a hybrid computing environment that includes a host computer, a plurality of accelerators, the host computer and the accelerators adapted to one another for data communications by a system level message passing module, the host computer having local memory shared remotely with the accelerators, the accelerators having local memory for the plurality of accelerators shared remotely with the host computer, where data processing according to embodiments of the present invention includes performing, by the plurality of accelerators, a local reduction operation with the local shared memory for the accelerators; writing remotely, by one of the plurality of accelerators to the shared memory local to the host computer, a result of the local reduction operation; and reading, by the host computer from shared memory local to the host computer, the result of the local reduction operation. | 07-29-2010 |
20100274868 | Direct Memory Access In A Hybrid Computing Environment - DMA in a computing environment that includes several computers and DMA engines, the computers adapted to one another for data communications by an data communications fabric, each computer executing an application, where DMA includes pinning, by a first application, a memory region, including providing, to all applications, information describing the memory region; effecting, by a second application in dependence upon the information describing the memory region, DMA transfers related to the memory region, including issuing DMA requests to a particular DMA engine for processing; and unpinning, by the first application, the memory region, including insuring, prior to unpinning, that no additional DMA requests related to the memory region are issued, that all outstanding DMA requests related to the memory region are provided to a DMA engine, and that processing of all outstanding DMA requests related to the memory region and provided to a DMA engine has been completed. | 10-28-2010 |
20110173353 | Virtualizing A Host USB Adapter - Virtualizing a host USB adapter in a virtualized environment maintained by a hypervisor, the hypervisor administering one or more logical partitions, where virtualizing includes receiving, by the hypervisor from a logical partition via a logical USB adapter, a USB Input/Output (‘I/O’) request, the logical USB adapter associated with a USB device coupled to the host USB adapter; placing, by the hypervisor, a work queue element (‘WQE’) in a queue of a queue pair associated with the logical USB adapter; and administering, by an interface device in dependence upon the WQE, USB data communications among the logical partition and the USB device including retrieving, with direct memory access (‘DMA’), USB data originating at the USB device from the host USB adapter into a dedicated memory region for the logical USB adapter. | 07-14-2011 |
20120155462 | Processing Multicast Messages In A Data Processing System - Processing multicast messages in a data processing system that includes compute nodes, each of which includes a communications controller, the communications controllers operatively coupled for data communications amongst the compute nodes, each compute node in the data processing system executing at least one logical partition, the data processing system including a hypervisor, where multicast messages are processed by receiving, by more than one of the communications controllers, a multicast message; responsive to receipt of the multicast message, signaling, by one of the communications controllers, an interrupt in the hypervisor without signaling an interrupt by any other communications controller; determining, by the hypervisor, that the message received by the interrupt signaling communications controller is a multicast message; and providing, by the hypervisor, the multicast message to at least one logical partition configured to receive multicast messages. | 06-21-2012 |
20120210086 | Data Communications Through A Host Fibre Channel Adapter - Data communications through a host Fibre Channel adapter (‘HFCA’) implemented with a computer that includes two or more logical partitions, each logical partition including a separate instance of an operating system, each instance of an operating system including an instance of a low-level, switched fabric input/output (‘I/O’) library, including establishing, in the HFCA by instances of the I/O library in two or more logical partitions and by the hypervisor, separate logical Fibre Channel adapters (‘LFCAs’) for at least two of the logical partitions, each LFCA including an association of an LFCA identifier with at least one range of I/O memory addresses in the address space of a logical partition and transferring, at the behest of application programs in the two or more logical partitions, data between the RAM of the logical partitions and the data storage devices through the LFCAs, the HFCA, and the Fibre Channel fabric. | 08-16-2012 |
20120331260 | IIMPLEMENTING DMA MIGRATION OF LARGE SYSTEM MEMORY AREAS - A method, system and computer program product are provided for implementing memory migration of large system memory pages in a computer system. A large page to be migrated from a current location to a target location is converted into a plurality of smaller subpages for a processor or system page table. The migrated page is divided into first, second and third segments, each segment composed of the smaller subpages and each respective segment changes as each individual subpage is migrated. CPU and I/O accesses to respective subpages of the first segment are directed to corresponding subpages of the target page or new page. I/O accesses to respective subpages of the second segment use a dual write mode targeting corresponding subpages of both the current page and the target page. CPU and I/O accesses to the subpages of the third segment access the corresponding subpages of the current page. | 12-27-2012 |
20140068734 | Managing Access to a Shared Resource Using Client Access Credentials - Systems and methods to manage access to shared resources are provided. A particular method may include receiving a request to access a shared resource from a first client of a plurality of clients and determining whether the shared resource is being used. A first window credential associated with the first client may be retrieved. The first window credential may be one of a plurality of window credentials associated with the plurality of clients. The first window credential may be used to access the shared resource. | 03-06-2014 |
20140173338 | COMMUNICATION CHANNEL FAILOVER IN A HIGH PERFORMANCE COMPUTING (HPC) NETWORK - A method, apparatus and program product implement a failover of a communication channel in a cluster fabric that transfers a state of the communication channel between windows resident in a hardware fabric interface device. The failover is desirably implemented by updating a plurality of mappings between memory resources in a host memory and hardware resources in the fabric interface device, and typically without modifying the memory resources such that involvement of a client that utilizes the communication channel in the failover is minimized or eliminated. | 06-19-2014 |
20140372638 | IMPLEMENTING CAPACITY AND USER-BASED RESOURCE ALLOCATION FOR A SHARED ADAPTER IN A VIRTUALIZED SYSTEM - A method, system and computer program product are provided for implementing capacity and user-based resource allocation for a hardware I/O adapter, such as, a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. Configuring a virtual function (VF) is provided by supplying a capacity value of a port. The capacity value represents a percentage of the available performance of the port. The adapter driver configures multiple adapter parameters to provide the available performance for the port. A user is enabled to specify a level of performance assigned to each protocol of the port. | 12-18-2014 |
20140372739 | IMPLEMENTING CONCURRENT ADAPTER FIRMWARE UPDATE FOR AN SRIOV ADAPTER IN A VIRTUALIZED SYSTEM - A method, system and computer program product are provided for implementing concurrent adapter firmware update of a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. An adapter driver is used to update adapter firmware concurrent with normal I/O operations. When configuration is stored in a scratchpad buffer, the adapter driver detects virtual functions (VFs) configured and operating. An enhanced error handling (EEH) process is initiated, freezing the VFs, and an updated adapter firmware image is loaded to the adapter. The adapter driver completes the EEH recovery, the adapter is restarted using the new updated adapter firmware. The VFs device drivers unfreeze the VFs, and complete the EEH recovery. | 12-18-2014 |
20140372789 | IMPLEMENTING ENHANCED ERROR HANDLING OF A SHARED ADAPTER IN A VIRTUALIZED SYSTEM - A method, system and computer program product are provided for implementing enhanced error handling for a hardware I/O adapter, such as a Single Root Input/Output Virtualization (SRIOV) adapter, in a virtualized system. The hardware I/O adapter is partitioned into multiple endpoints, with each Partitionable Endpoint (PE) corresponding to a function, and there is an adapter PE associated with the entire adapter. The endpoints are managed both independently for actions limited in scope to a single function, and as a group for actions with the scope of the adapter. An error or failure of the adapter PE freezes the adapter PE and propagates to the VF PEs associated with the adapter, causing the VF PEs to be frozen. An adapter driver and VF device drivers are informed of the error, and start recovery. The hypervisor locks out the VF device drivers at key points enabling adapter recovery to successfully complete. | 12-18-2014 |
20140372794 | IMPLEMENTING CONCURRENT DEVICE DRIVER MAINTENANCE AND RECOVERY FOR AN SRIOV ADAPTER IN A VIRTUALIZED SYSTEM - A method, system and computer program product are provided for implementing concurrent adapter driver maintenance and recovery for a Single Root Input/Output Virtualization (SRIOV) adapter in a computer system. An adapter driver at start up time performs configuration of the adapter and each of a set of virtual functions (VFs). The adapter driver writes critical adapter and VF configuration data to a scratchpad buffer. When device driver maintenance is needed, such as to load updated adapter driver firmware, all VF drivers are held off temporarily, current adapter driver is detached, and then the adapter driver is reloaded with the updated driver firmware. Then the adapter driver is restarted with the updated adapter driver firmware, and performs a reinitialization process. The adapter driver performs adapter and VF configuration restoring existing configuration using values read from the scratchpad buffer. | 12-18-2014 |
20140372795 | IMPLEMENTING DISTRIBUTED DEBUG DATA COLLECTION AND ANALYSIS FOR A SHARED ADAPTER IN A VIRTUALIZED SYSTEM - A method, system and computer program product are provided for implementing distributed debug data collection and analysis for a hardware I/O adapter, such as, a Single Root Input/Output Virtualization (SRIOV) adapter in a virtualized system. A predetermined event triggers a base error collection sequence. Adapter driver data is collected and virtual function (VF) device drivers are locked out responsive to triggering the base error collection sequence. Adapter debug data is collected and the adapter is reinitialized including an indication to VF drivers if VF error data is to be collected. The virtual function (VF) device drivers are unlocked allowing the VF device drivers to commence recovery of a respective virtual function (VF). | 12-18-2014 |
20140372801 | IMPLEMENTING SHARED ADAPTER CONFIGURATION UPDATES CONCURRENT WITH MAINTENANCE ACTIONS IN A VIRTUALIZED SYSTEM - A method, system and computer program product are provided for implementing shared adapter configuration updates concurrent with maintenance actions for a Single Root Input/Output Virtualization (SRIOV) adapter in a computer system. A configuration of the adapter is decoupled from the state of the adapter during a recovery period. When a configuration request is received, the configuration request is validated. Responsive to a valid configuration request, the saved configuration state of the adapter is updated. Once the adapter completes recovery, the adapter is restored to the new configuration instead of the configuration prior to failure. | 12-18-2014 |