Author: cgutman
Date: Mon Aug  3 02:23:55 2009
New Revision: 42355

URL: http://svn.reactos.org/svn/reactos?rev=42355&view=rev
Log:
 - Don't hold the spin lock when calling the request completion handler

Modified:
    trunk/reactos/lib/drivers/ip/transport/datagram/datagram.c

Modified: trunk/reactos/lib/drivers/ip/transport/datagram/datagram.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/drivers/ip/transport/datagram/datagram.c?rev=42355&r1=42354&r2=42355&view=diff
==============================================================================
--- trunk/reactos/lib/drivers/ip/transport/datagram/datagram.c [iso-8859-1] 
(original)
+++ trunk/reactos/lib/drivers/ip/transport/datagram/datagram.c [iso-8859-1] Mon 
Aug  3 02:23:55 2009
@@ -136,11 +136,15 @@
                             &SrcAddress->Address.IPv4Address,
                             sizeof(SrcAddress->Address.IPv4Address) );
 
+              TcpipReleaseSpinLock(&AddrFile->Lock, OldIrql);
+
               /* Complete the receive request */
               if (Current->BufferSize < DataSize)
                   Current->Complete(Current->Context, STATUS_BUFFER_OVERFLOW, 
Current->BufferSize);
               else
                   Current->Complete(Current->Context, STATUS_SUCCESS, 
DataSize);
+
+              TcpipAcquireSpinLock(&AddrFile->Lock, &OldIrql);
          }
       }
 


Reply via email to