US 7,493,427 B2
Apparatus and method for supporting received data processing in an offload of network protocol processing
Douglas Morgan Freimuth, New York, N.Y. (US); Elbert C. Hu, Elmhurst, N.Y. (US); Ronald Mraz, South Salem, N.Y. (US); Erich M. Nahum, New York, N.Y. (US); Prashant Pradhan, New Rochelle, N.Y. (US); Sambit Sahu, Mahopac, N.Y. (US); and John Michael Tracey, Scarsdale, N.Y. (US)
Assigned to International Business Machines Corporation, Armonk, N.Y. (US)
Filed on Jul. 14, 2004, as Appl. No. 10/891,196.
Prior Publication US 2006/0015618 A1, Jan. 19, 2006
Int. Cl. G06F 3/00 (2006.01); G06F 15/167 (2006.01); G06F 13/00 (2006.01)
U.S. Cl. 710—52  [709/213; 710/56; 711/148; 711/149] 33 Claims
OG exemplary drawing
 
1. A method, in a data processing system, for transferring data to a host system from a network adapter, comprising:
receiving, in the network adapter, the data for transferring to the host system;
determining whether a connection specific application buffer is allocated for a connection associated with the data;
determining whether to wait for a specific application buffer to be allocated for the connection associated with the data, responsive to a determination that a connection specific application buffer has not been allocated for the connection;
selecting a non-connection specific application buffer from a pool of buffers to receive the data responsive to a determination not to wait for a specific application buffer to be allocated;
transferring the data to the selected non-connection specific application buffer;
examining descriptors generated by the network adapter for the data: determining whether the descriptors reference a consecutive physical address space; and
providing the descriptors to the host system in a single bulk transaction between the network adapter and the host system responsive to a determination that the descriptors reference a consecutive physical address space.