ReactOS 0.4.16-dev-835-gd769f56
|
Go to the source code of this file.
Classes | |
struct | _RX_SCAVENGER_ENTRY |
struct | _RDBSS_SCAVENGER |
struct | _PURGE_SYNCHRONIZATION_CONTEXT |
Macros | |
#define | RX_SCAVENGER_FINALIZATION_TIME_INTERVAL (10 * 1000 * 1000 * 10) |
#define | RxInitializeScavengerEntry(ScavengerEntry) |
#define | RxAcquireScavengerMutex() KeWaitForSingleObject(&RxScavengerMutex, Executive, KernelMode, FALSE, NULL) |
#define | RxReleaseScavengerMutex() KeReleaseMutex(&RxScavengerMutex, FALSE) |
#define | DONT_ATTEMPT_FINALIZE_ON_PURGE FALSE |
#define | ATTEMPT_FINALIZE_ON_PURGE TRUE |
#define | RxInitializeRdbssScavenger(Scavenger, ScavengerTimeLimit) |
Typedefs | |
typedef struct _RX_SCAVENGER_ENTRY | RX_SCAVENGER_ENTRY |
typedef struct _RX_SCAVENGER_ENTRY * | PRX_SCAVENGER_ENTRY |
typedef enum _RDBSS_SCAVENGER_STATE | RDBSS_SCAVENGER_STATE |
typedef enum _RDBSS_SCAVENGER_STATE * | PRDBSS_SCAVENGER_STATE |
typedef struct _RDBSS_SCAVENGER | RDBSS_SCAVENGER |
typedef struct _RDBSS_SCAVENGER * | PRDBSS_SCAVENGER |
typedef struct _PURGE_SYNCHRONIZATION_CONTEXT | PURGE_SYNCHRONIZATION_CONTEXT |
typedef struct _PURGE_SYNCHRONIZATION_CONTEXT * | PPURGE_SYNCHRONIZATION_CONTEXT |
Enumerations | |
enum | _RDBSS_SCAVENGER_STATE { RDBSS_SCAVENGER_INACTIVE , RDBSS_SCAVENGER_DORMANT , RDBSS_SCAVENGER_ACTIVE , RDBSS_SCAVENGER_SUSPENDED } |
Functions | |
VOID | RxMarkFobxOnCleanup (_In_ PFOBX pFobx, _Out_ PBOOLEAN NeedPurge) |
VOID | RxMarkFobxOnClose (_In_ PFOBX Fobx) |
NTSTATUS | RxPurgeRelatedFobxs (PNET_ROOT NetRoot, PRX_CONTEXT RxContext, BOOLEAN AttemptFinalization, PFCB PurgingFcb) |
VOID | RxInitializePurgeSyncronizationContext (_In_ PPURGE_SYNCHRONIZATION_CONTEXT PurgeSyncronizationContext) |
BOOLEAN | RxScavengeRelatedFobxs (_In_ PFCB Fcb) |
VOID | RxScavengeFobxsForNetRoot (PNET_ROOT NetRoot, PFCB PurgingFcb, BOOLEAN SynchronizeWithScavenger) |
VOID | RxpMarkInstanceForScavengedFinalization (PVOID Instance) |
VOID | RxpUndoScavengerFinalizationMarking (_In_ PVOID Instance) |
BOOLEAN | RxScavengeVNetRoots (_In_ PRDBSS_DEVICE_OBJECT RxDeviceObject) |
VOID | RxSynchronizeWithScavenger (_In_ PRX_CONTEXT RxContext) |
Variables | |
KMUTEX | RxScavengerMutex |
Definition at line 46 of file scavengr.h.
Definition at line 45 of file scavengr.h.
#define RX_SCAVENGER_FINALIZATION_TIME_INTERVAL (10 * 1000 * 1000 * 10) |
Definition at line 6 of file scavengr.h.
#define RxAcquireScavengerMutex | ( | ) | KeWaitForSingleObject(&RxScavengerMutex, Executive, KernelMode, FALSE, NULL) |
Definition at line 26 of file scavengr.h.
#define RxInitializeRdbssScavenger | ( | Scavenger, | |
ScavengerTimeLimit | |||
) |
Definition at line 84 of file scavengr.h.
#define RxInitializeScavengerEntry | ( | ScavengerEntry | ) |
#define RxReleaseScavengerMutex | ( | ) | KeReleaseMutex(&RxScavengerMutex, FALSE) |
Definition at line 27 of file scavengr.h.
typedef struct _RDBSS_SCAVENGER * PRDBSS_SCAVENGER |
typedef enum _RDBSS_SCAVENGER_STATE * PRDBSS_SCAVENGER_STATE |
typedef struct _RX_SCAVENGER_ENTRY * PRX_SCAVENGER_ENTRY |
typedef struct _RDBSS_SCAVENGER RDBSS_SCAVENGER |
Enumerator | |
---|---|
RDBSS_SCAVENGER_INACTIVE | |
RDBSS_SCAVENGER_DORMANT | |
RDBSS_SCAVENGER_ACTIVE | |
RDBSS_SCAVENGER_SUSPENDED |
Definition at line 48 of file scavengr.h.
VOID RxInitializePurgeSyncronizationContext | ( | _In_ PPURGE_SYNCHRONIZATION_CONTEXT | PurgeSyncronizationContext | ) |
Referenced by RxCommonCleanup().
Referenced by RxCloseAssociatedSrvOpen(), and RxCommonClose().
Definition at line 6277 of file rxce.c.
Referenced by RxDereference().
NTSTATUS RxPurgeRelatedFobxs | ( | PNET_ROOT | NetRoot, |
PRX_CONTEXT | RxContext, | ||
BOOLEAN | AttemptFinalization, | ||
PFCB | PurgingFcb | ||
) |
Definition at line 7133 of file rxce.c.
Referenced by RxCommonCreate(), RxCommonSetInformation(), and RxCreateFromNetRoot().
VOID RxScavengeFobxsForNetRoot | ( | PNET_ROOT | NetRoot, |
PFCB | PurgingFcb, | ||
BOOLEAN | SynchronizeWithScavenger | ||
) |
Definition at line 7798 of file rxce.c.
Referenced by RxCommonCreate(), and RxCommonSetInformation().
Referenced by RxCommonClose(), and RxSearchForCollapsibleOpen().
BOOLEAN RxScavengeVNetRoots | ( | _In_ PRDBSS_DEVICE_OBJECT | RxDeviceObject | ) |
Referenced by RxCreateTreeConnect().
VOID RxSynchronizeWithScavenger | ( | _In_ PRX_CONTEXT | RxContext | ) |
Referenced by RxCommonClose().
|
extern |
Definition at line 608 of file rdbss.c.
Referenced by RxDriverEntry().