[ros-diffs] [cgutman] 38806: - Enable IRP tracking

cgutman at svn.reactos.org cgutman at svn.reactos.org
Sat Jan 17 03:12:39 CET 2009


Author: cgutman
Date: Fri Jan 16 20:12:39 2009
New Revision: 38806

URL: http://svn.reactos.org/svn/reactos?rev=38806&view=rev
Log:
 - Enable IRP tracking

Modified:
    branches/aicom-network-fixes/drivers/network/tcpip/include/irp.h
    branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c
    branches/aicom-network-fixes/drivers/network/tcpip/tcpip/irp.c
    branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c

Modified: branches/aicom-network-fixes/drivers/network/tcpip/include/irp.h
URL: http://svn.reactos.org/svn/reactos/branches/aicom-network-fixes/drivers/network/tcpip/include/irp.h?rev=38806&r1=38805&r2=38806&view=diff
==============================================================================
--- branches/aicom-network-fixes/drivers/network/tcpip/include/irp.h [iso-8859-1] (original)
+++ branches/aicom-network-fixes/drivers/network/tcpip/include/irp.h [iso-8859-1] Fri Jan 16 20:12:39 2009
@@ -10,10 +10,4 @@
 VOID IRPRemember( PIRP Irp, PCHAR File, UINT Line );
 NTSTATUS IRPFinish( PIRP Irp, NTSTATUS Status );
 
-#ifdef MEMTRACK
-#define RIRP(x) IRPRemember(x,__FILE__,__LINE__)
-#else
-#define RIRP(x)
-#endif
-
 #endif/*__IRP_H*/

Modified: branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c
URL: http://svn.reactos.org/svn/reactos/branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c?rev=38806&r1=38805&r2=38806&view=diff
==============================================================================
--- branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c [iso-8859-1] (original)
+++ branches/aicom-network-fixes/drivers/network/tcpip/tcpip/dispatch.c [iso-8859-1] Fri Jan 16 20:12:39 2009
@@ -106,7 +106,7 @@
 			    Irp->IoStatus.Information));
     TI_DbgPrint(DEBUG_IRP, ("Completing IRP at (0x%X).\n", Irp));
 
-    IRPFinish(Irp, Irp->IoStatus.Status);
+    IoCompleteRequest(Irp, IO_NETWORK_INCREMENT);
 
     TI_DbgPrint(DEBUG_IRP, ("Done Completing IRP\n"));
 }

Modified: branches/aicom-network-fixes/drivers/network/tcpip/tcpip/irp.c
URL: http://svn.reactos.org/svn/reactos/branches/aicom-network-fixes/drivers/network/tcpip/tcpip/irp.c?rev=38806&r1=38805&r2=38806&view=diff
==============================================================================
--- branches/aicom-network-fixes/drivers/network/tcpip/tcpip/irp.c [iso-8859-1] (original)
+++ branches/aicom-network-fixes/drivers/network/tcpip/tcpip/irp.c [iso-8859-1] Fri Jan 16 20:12:39 2009
@@ -12,9 +12,7 @@
 #include "precomp.h"
 
 VOID IRPRemember( PIRP Irp, PCHAR File, UINT Line ) {
-#ifdef MEMTRACK
     TrackWithTag( IRP_TAG, Irp, File, Line );
-#endif
 }
 
 NTSTATUS IRPFinish( PIRP Irp, NTSTATUS Status ) {
@@ -23,9 +21,7 @@
 
     //DbgPrint("Called: Irp %x, Status %x Event %x\n", Irp, Status, Irp->UserEvent);
 
-#ifdef MEMTRACK
-    UntrackFL( __FILE__, __LINE__, Irp );
-#endif
+    UntrackFL( __FILE__, __LINE__, Irp, IRP_TAG );
 
     Irp->IoStatus.Status = Status;
 

Modified: branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c
URL: http://svn.reactos.org/svn/reactos/branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c?rev=38806&r1=38805&r2=38806&view=diff
==============================================================================
--- branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c [iso-8859-1] (original)
+++ branches/aicom-network-fixes/drivers/network/tcpip/tcpip/main.c [iso-8859-1] Fri Jan 16 20:12:39 2009
@@ -337,7 +337,7 @@
   NTSTATUS Status;
   PTRANSPORT_CONTEXT Context;
 
-  RIRP(Irp);
+  IRPRemember(Irp, __FILE__, __LINE__);
 
 //  DbgPrint("Called. DeviceObject is at (0x%X), IRP is at (0x%X).\n", DeviceObject, Irp);
 
@@ -390,7 +390,7 @@
   BOOL Complete = TRUE;
   PIO_STACK_LOCATION IrpSp;
 
-  RIRP(Irp);
+  IRPRemember(Irp, __FILE__, __LINE__);
 
   IrpSp = IoGetCurrentIrpStackLocation(Irp);
 
@@ -473,8 +473,10 @@
 
   if( Complete )
       IRPFinish( Irp, Status );
-  else
+  else {
       Irp->IoStatus.Status = Status;
+      UntrackFL(__FILE__, __LINE__, Irp, IRP_TAG);
+  }
 
   return Status;
 }
@@ -496,7 +498,7 @@
   NTSTATUS Status;
   PIO_STACK_LOCATION IrpSp;
 
-  RIRP(Irp);
+  IRPRemember(Irp, __FILE__, __LINE__);
 
   IrpSp  = IoGetCurrentIrpStackLocation(Irp);
 



More information about the Ros-diffs mailing list