mirror of
https://github.com/reactos/reactos.git
synced 2024-10-02 07:26:47 +00:00
implemented NdisScheduleWorkItem writen by me and arty
svn path=/trunk/; revision=32750
This commit is contained in:
parent
9797b5eeb0
commit
6c16e66402
|
@ -269,5 +269,6 @@ NdisWritePciSlotInformation@20
|
|||
NdisWritePcmciaAttributeMemory@16
|
||||
TrFilterDprIndicateReceive@28
|
||||
TrFilterDprIndicateReceiveComplete@4
|
||||
NdisScheduleWorkItem@4
|
||||
|
||||
; EOF
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
|
||||
#include "ndissys.h"
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
|
@ -1037,4 +1036,27 @@ NdisIMInitializeDeviceInstanceEx(
|
|||
return NDIS_STATUS_FAILURE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
VOID
|
||||
STDCALL
|
||||
ndisProcWorkItemHandler(PVOID pContext)
|
||||
{
|
||||
PNDIS_WORK_ITEM pNdisItem = (PNDIS_WORK_ITEM)pContext;
|
||||
pNdisItem->Routine(pNdisItem, pNdisItem->Context);
|
||||
}
|
||||
|
||||
EXPORT
|
||||
NDIS_STATUS
|
||||
NdisScheduleWorkItem(
|
||||
IN PNDIS_WORK_ITEM pWorkItem)
|
||||
{
|
||||
PWORK_QUEUE_ITEM pntWorkItem = (PWORK_QUEUE_ITEM)pWorkItem->WrapperReserved;
|
||||
ExInitializeWorkItem(pntWorkItem, ndisProcWorkItemHandler, pWorkItem);
|
||||
ExQueueWorkItem(pntWorkItem, CriticalWorkQueue);
|
||||
return NDIS_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* EOF */
|
||||
|
|
|
@ -2285,7 +2285,7 @@ NdisDestroyLookaheadBufferFromSharedMemory(
|
|||
|
||||
#endif
|
||||
|
||||
#if defined(_M_IX86) || defined(_M_AMD64) || defined(_M_ARM)
|
||||
#if defined(_M_IX86) || defined(_M_AMD64) || defined(_M_ARM) || defined(_M_PPC)
|
||||
|
||||
/*
|
||||
* VOID
|
||||
|
@ -2309,17 +2309,17 @@ NdisDestroyLookaheadBufferFromSharedMemory(
|
|||
#else
|
||||
|
||||
#define NdisMoveMappedMemory(Destination, Source, Length) \
|
||||
{
|
||||
PUCHAR _Dest = Destination, _Src = Source, _End = _Dest + Length;
|
||||
while (_Dest < _End)
|
||||
*_Dest++ = _Src++;
|
||||
{ \
|
||||
PUCHAR _Dest = Destination, _Src = Source, _End = _Dest + Length; \
|
||||
while (_Dest < _End) \
|
||||
*_Dest++ = _Src++; \
|
||||
}
|
||||
|
||||
#define NdisZeroMappedMemory(Destination, Length) \
|
||||
{
|
||||
PUCHAR _Dest = Destination, _End = _Dest + Length;
|
||||
while (_Dest < _End)
|
||||
*_Dest++ = 0;
|
||||
{ \
|
||||
PUCHAR _Dest = Destination, _End = _Dest + Length; \
|
||||
while (_Dest < _End) \
|
||||
*_Dest++ = 0; \
|
||||
}
|
||||
|
||||
#endif /* _M_IX86 or _M_AMD64 */
|
||||
|
@ -4152,6 +4152,8 @@ typedef struct _NDIS_MINIPORT_WORK_ITEM {
|
|||
PVOID WorkItemContext;
|
||||
} NDIS_MINIPORT_WORK_ITEM, *PNDIS_MINIPORT_WORK_ITEM;
|
||||
|
||||
/* Forward declare to pick up a consistent type */
|
||||
typedef struct _NDIS_WORK_ITEM;
|
||||
#pragma warning(push)
|
||||
typedef VOID (*NDIS_PROC)(struct _NDIS_WORK_ITEM *, PVOID);
|
||||
#pragma warning(pop)
|
||||
|
@ -4162,7 +4164,6 @@ typedef struct _NDIS_WORK_ITEM
|
|||
UCHAR WrapperReserved[8*sizeof(PVOID)];
|
||||
} NDIS_WORK_ITEM, *PNDIS_WORK_ITEM;
|
||||
|
||||
|
||||
typedef struct _NDIS_BIND_PATHS {
|
||||
UINT Number;
|
||||
NDIS_STRING Paths[1];
|
||||
|
|
Loading…
Reference in a new issue