Patent ID: 8392629
Filing Date: 2013-03-05
Classification: G06F

Abstract:
1. A method for transferring completion blocks using a direct memory access (DMA) module from an adapter memory location assigned to one of a plurality of virtual machines to a computing system memory location assigned to the virtual machine, comprising: (a) determining if a completion block for the virtual machine is available at the assigned location of the adapter memory; (b) determining if space is available at the assigned computing system memory location; (c) transferring the completion block from the adapter memory to the computing system memory; (d) updating a first memory address list indicating to an adapter processor that the completion block is transferred to the assigned memory location and the assigned memory location is no longer available; (e) updating a first pointer array indicating to the virtual machine that the completion block is transferred; (f) performing steps (a) to (e) for a next completion block for the virtual machine; wherein the DMA module maintains the first pointer array that is updated by the virtual machine to indicate that the completion block is available for transfer; and wherein the DMA module maintains a second pointer array that is updated by the DMA module when the completion block for the virtual machine is transferred.