1. Add DPC protocol and DpcLib library in MdeModulePkg.

2. Add DpcDxe module and DxeDpcLib module in MdeModulePkg
3. Port network stack module to use DPC.
4. Use MIN, and MAX defined in MdePkg to replace NET_MIN and NET_MAX.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@4307 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
vanjeff
2007-11-20 05:42:23 +00:00
parent 04e12c2147
commit 36ee91ca36
48 changed files with 1835 additions and 543 deletions

View File

@ -1,6 +1,6 @@
/** @file
Copyright (c) 2005 - 2006, Intel Corporation
Copyright (c) 2005 - 2007, Intel Corporation
All rights reserved. This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@ -150,7 +150,7 @@ TcpRexmitTimeout (
// yet ACKed.
//
FlightSize = TCP_SUB_SEQ (Tcb->SndNxt, Tcb->SndUna);
Tcb->Ssthresh = NET_MAX ((UINT32) (2 * Tcb->SndMss), FlightSize / 2);
Tcb->Ssthresh = MAX ((UINT32) (2 * Tcb->SndMss), FlightSize / 2);
Tcb->CWnd = Tcb->SndMss;
Tcb->LossRecover = Tcb->SndNxt;
@ -494,7 +494,6 @@ TcpBackoffRto (
/**
Heart beat timer handler.
@param Event Timer event signaled, ignored.
@param Context Context of the timer event, ignored.
@return None.
@ -502,8 +501,7 @@ TcpBackoffRto (
**/
VOID
EFIAPI
TcpTicking (
IN EFI_EVENT Event,
TcpTickingDpc (
IN VOID *Context
)
{
@ -580,3 +578,23 @@ NextConnection:
;
}
}
/**
Heart beat timer handler, queues the DPC at TPL_CALLBACK.
@param Event Timer event signaled, ignored.
@param Context Context of the timer event, ignored.
@return None.
**/
VOID
EFIAPI
TcpTicking (
IN EFI_EVENT Event,
IN VOID *Context
)
{
NetLibQueueDpc (TPL_CALLBACK, TcpTickingDpc, Context);
}