Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

96 lines
1.9 KiB

/*++
Copyright (c) 1989 Microsoft Corporation
Module Name:
rxdebug.h
Abstract:
This module contains the definition of auxilary data structures used in
debugging. Each of the data structures is conditionalized by its own
#ifdef tag.
Author:
Balan Sethu Raman --
--*/
#ifndef _RXDEBUG_H_
#define _RXDEBUG_H_
extern VOID
RxInitializeDebugSupport();
extern VOID
RxTearDownDebugSupport();
#ifdef RX_WJ_DBG_SUPPORT
#define MAX_JOURNAL_BITMAP_SIZE (8 * 1024)
typedef struct _FCB_WRITE_JOURNAL_ {
LIST_ENTRY JournalsList;
PFCB pFcb;
PWCHAR pName;
LONG WritesInitiated;
LONG LowIoWritesInitiated;
LONG LowIoWritesCompleted;
PBYTE pWriteInitiationBitmap;
PBYTE pLowIoWriteInitiationBitmap;
PBYTE pLowIoWriteCompletionBitmap;
BYTE WriteInitiationBitmap[MAX_JOURNAL_BITMAP_SIZE];
BYTE LowIoWriteInitiationBitmap[MAX_JOURNAL_BITMAP_SIZE];
BYTE LowIoWriteCompletionBitmap[MAX_JOURNAL_BITMAP_SIZE];
WCHAR Path[MAX_PATH] ;
} FCB_WRITE_JOURNAL, *PFCB_WRITE_JOURNAL;
// forward declarations
VOID
RxdInitializeWriteJournalSupport();
VOID
RxdTearDownWriteJournalSupport();
VOID
RxdInitializeFcbWriteJournalDebugSupport(
PFCB pFcb);
VOID
RxdTearDownFcbWriteJournalDebugSupport(
PFCB pFcb);
VOID
RxdUpdateJournalOnWriteInitiation(
IN OUT PFCB pFcb,
IN LARGE_INTEGER Offset,
IN ULONG Length);
VOID
RxdUpdateJournalOnLowIoWriteInitiation(
IN OUT PFCB pFcb,
IN LARGE_INTEGER Offset,
IN ULONG Length);
VOID
RxdUpdateJournalOnLowIoWriteCompletion(
IN OUT PFCB pFcb,
IN LARGE_INTEGER Offset,
IN ULONG Length);
#endif // RX_WJ_DBG_SUPPORT
#endif // _RXDEBUG_H_