[NDIS] Improve debug output

This commit is contained in:
Mark Jansen 2018-07-02 22:29:05 +02:00
parent 3606404b2e
commit 1b2ca28107
3 changed files with 21 additions and 13 deletions

View file

@ -109,7 +109,8 @@ extern KSPIN_LOCK AdapterListLock;
#if DBG #if DBG
VOID VOID
MiniDisplayPacket( MiniDisplayPacket(
PNDIS_PACKET Packet); PNDIS_PACKET Packet,
PCSTR Reason);
#endif /* DBG */ #endif /* DBG */
VOID VOID

View file

@ -59,7 +59,8 @@ KSPIN_LOCK AdapterListLock;
VOID VOID
MiniDisplayPacket( MiniDisplayPacket(
PNDIS_PACKET Packet) PNDIS_PACKET Packet,
PCSTR Reason)
{ {
#if DBG #if DBG
ULONG i, Length; ULONG i, Length;
@ -71,15 +72,15 @@ MiniDisplayPacket(
0, 0,
64); 64);
DbgPrint("*** PACKET START ***"); DbgPrint("*** %s PACKET START (%p) ***\n", Reason, Packet);
for (i = 0; i < Length; i++) { for (i = 0; i < Length; i++) {
if (i % 12 == 0) if (i % 16 == 0)
DbgPrint("\n%04X ", i); DbgPrint("\n%04X ", i);
DbgPrint("%02X ", Buffer[i]); DbgPrint("%02X ", Buffer[i]);
} }
DbgPrint("*** PACKET STOP ***\n"); DbgPrint("\n*** %s PACKET STOP ***\n", Reason);
} }
#endif /* DBG */ #endif /* DBG */
} }
@ -624,8 +625,8 @@ MiniAdapterHasAddress(
*/ */
{ {
UINT Length; UINT Length;
PUCHAR Start1; PUCHAR PacketAddress;
PUCHAR Start2; PUCHAR AdapterAddress;
PNDIS_BUFFER NdisBuffer; PNDIS_BUFFER NdisBuffer;
UINT BufferLength; UINT BufferLength;
@ -653,7 +654,7 @@ MiniAdapterHasAddress(
return FALSE; return FALSE;
} }
NdisQueryBuffer(NdisBuffer, (PVOID)&Start2, &BufferLength); NdisQueryBuffer(NdisBuffer, (PVOID)&PacketAddress, &BufferLength);
/* FIXME: Should handle fragmented packets */ /* FIXME: Should handle fragmented packets */
@ -675,12 +676,12 @@ MiniAdapterHasAddress(
return FALSE; return FALSE;
} }
Start1 = (PUCHAR)&Adapter->Address; AdapterAddress = (PUCHAR)&Adapter->Address;
NDIS_DbgPrint(MAX_TRACE, ("packet address: %x:%x:%x:%x:%x:%x adapter address: %x:%x:%x:%x:%x:%x\n", NDIS_DbgPrint(MAX_TRACE, ("packet address: %x:%x:%x:%x:%x:%x adapter address: %x:%x:%x:%x:%x:%x\n",
*((char *)Start1), *(((char *)Start1)+1), *(((char *)Start1)+2), *(((char *)Start1)+3), *(((char *)Start1)+4), *(((char *)Start1)+5), *(PacketAddress), *(PacketAddress+1), *(PacketAddress+2), *(PacketAddress+3), *(PacketAddress+4), *(PacketAddress+5),
*((char *)Start2), *(((char *)Start2)+1), *(((char *)Start2)+2), *(((char *)Start2)+3), *(((char *)Start2)+4), *(((char *)Start2)+5))); *(AdapterAddress), *(AdapterAddress+1), *(AdapterAddress+2), *(AdapterAddress+3), *(AdapterAddress+4), *(AdapterAddress+5)));
return (RtlCompareMemory((PVOID)Start1, (PVOID)Start2, Length) == Length); return (RtlCompareMemory(PacketAddress, AdapterAddress, Length) == Length);
} }

View file

@ -262,7 +262,7 @@ ProIndicatePacket(
NDIS_DbgPrint(MAX_TRACE, ("Called.\n")); NDIS_DbgPrint(MAX_TRACE, ("Called.\n"));
#if DBG #if DBG
MiniDisplayPacket(Packet); MiniDisplayPacket(Packet, "INDICATE");
#endif #endif
NdisQueryPacket(Packet, NULL, NULL, NULL, &PacketLength); NdisQueryPacket(Packet, NULL, NULL, NULL, &PacketLength);
@ -395,11 +395,17 @@ proSendPacketToMiniport(PLOGICAL_ADAPTER Adapter, PNDIS_PACKET Packet)
KIRQL RaiseOldIrql; KIRQL RaiseOldIrql;
NDIS_STATUS NdisStatus; NDIS_STATUS NdisStatus;
NDIS_DbgPrint(MAX_TRACE, ("Called.\n"));
if(MiniIsBusy(Adapter, NdisWorkItemSend)) { if(MiniIsBusy(Adapter, NdisWorkItemSend)) {
NDIS_DbgPrint(MID_TRACE, ("Busy: NdisWorkItemSend.\n"));
MiniQueueWorkItem(Adapter, NdisWorkItemSend, Packet, FALSE); MiniQueueWorkItem(Adapter, NdisWorkItemSend, Packet, FALSE);
return NDIS_STATUS_PENDING; return NDIS_STATUS_PENDING;
} }
MiniDisplayPacket(Packet, "SEND");
if(Adapter->NdisMiniportBlock.DriverHandle->MiniportCharacteristics.SendPacketsHandler) if(Adapter->NdisMiniportBlock.DriverHandle->MiniportCharacteristics.SendPacketsHandler)
{ {
if(Adapter->NdisMiniportBlock.Flags & NDIS_ATTRIBUTE_DESERIALIZE) if(Adapter->NdisMiniportBlock.Flags & NDIS_ATTRIBUTE_DESERIALIZE)