Author: cgutman Date: Sun Jul 19 09:06:08 2009 New Revision: 42076
URL: http://svn.reactos.org/svn/reactos?rev=42076&view=rev Log: - Send all waiting packets instead of only the first one to prevent a buildup of queued packets on a non-sendable NCE which becomes sendable later
Modified: trunk/reactos/lib/drivers/ip/network/neighbor.c
Modified: trunk/reactos/lib/drivers/ip/network/neighbor.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/ip/network/neig... ============================================================================== --- trunk/reactos/lib/drivers/ip/network/neighbor.c [iso-8859-1] (original) +++ trunk/reactos/lib/drivers/ip/network/neighbor.c [iso-8859-1] Sun Jul 19 09:06:08 2009 @@ -40,9 +40,9 @@ HashValue &= NB_HASHMASK;
/* Send any waiting packets */ - PacketEntry = ExInterlockedRemoveHeadList(&NCE->PacketQueue, - &NeighborCache[HashValue].Lock); - if( PacketEntry != NULL ) { + while ((PacketEntry = ExInterlockedRemoveHeadList(&NCE->PacketQueue, + &NeighborCache[HashValue].Lock)) != NULL) + { Packet = CONTAINING_RECORD( PacketEntry, NEIGHBOR_PACKET, Next );
TI_DbgPrint