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/da... ============================================================================== --- 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); } }