From 09b7cb6b69e90b067e88a53a7de8d3958ff58c17 Mon Sep 17 00:00:00 2001 From: Martin Cerveny Date: Tue, 7 Feb 2017 14:22:32 +0000 Subject: [PATCH] Indicated/Returned disbalance --- src/xennet/receiver.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/xennet/receiver.c b/src/xennet/receiver.c index 1e6775e..727f30a 100644 --- a/src/xennet/receiver.c +++ b/src/xennet/receiver.c @@ -328,7 +328,7 @@ fail1: } static FORCEINLINE VOID __IndicateReceiveNetBufferLists( - IN NDIS_HANDLE MiniportAdapterHandle, + IN PXENNET_RECEIVER Receiver, IN PNET_BUFFER_LIST NetBufferLists, IN NDIS_PORT_NUMBER PortNumber, IN ULONG NumberOfNetBufferLists, @@ -344,12 +344,15 @@ static FORCEINLINE VOID __IndicateReceiveNetBufferLists( Next = NET_BUFFER_LIST_NEXT_NBL(NetBufferLists); NET_BUFFER_LIST_NEXT_NBL(NetBufferLists) = NULL; - NdisMIndicateReceiveNetBufferLists(MiniportAdapterHandle, + NdisMIndicateReceiveNetBufferLists(AdapterGetHandle(Receiver->Adapter), NetBufferLists, PortNumber, 1, ReceiveFlags); + if (ReceiveFlags & NDIS_RECEIVE_FLAGS_RESOURCES) + (VOID)__ReceiverReturnNetBufferLists(Receiver, NetBufferLists, FALSE); + Count++; NetBufferLists = Next; } @@ -396,14 +399,11 @@ __ReceiverPushPackets( if (Indicated - Returned > IN_NDIS_MAX) Flags |= NDIS_RECEIVE_FLAGS_RESOURCES; - __IndicateReceiveNetBufferLists(AdapterGetHandle(Receiver->Adapter), + __IndicateReceiveNetBufferLists(Receiver, NetBufferList, NDIS_DEFAULT_PORT_NUMBER, Count, Flags); - - if (Flags & NDIS_RECEIVE_FLAGS_RESOURCES) - (VOID) __ReceiverReturnNetBufferLists(Receiver, NetBufferList, FALSE); } NDIS_STATUS -- 2.10.0.windows.1