Patent ID: 8351426

Claim:
A method for implementing Ethernet virtualization, the method comprising: receiving, by a host adapter, a packet destined for a virtual host on a network, the packet having an error status; storing, by the host adapter, the packet in a host memory, the storing comprising writing the packet to the host memory; subsequent to the storing, performing (a), (b), and (c): (a) checking the packet for an error condition; (b) updating the error status of the packet based upon the checking; and (c) writing only the error status of the packet to the host memory; based on a resource being available, writing the packet to a virtual host memory corresponding to the destination connection, the resource being a required resource for sending the packet to a virtual host corresponding to a destination connection, the availability of the resource based on factors comprising priority of the virtual host and physical storage size allocated for use by the virtual host; and based on the resource not being available, passing the packet to a store engine.