Source code of Windows XP (NT5)
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.

95 lines
1.8 KiB

  1. /*++
  2. Copyright (c) 1989 Microsoft Corporation
  3. Module Name:
  4. rxdebug.h
  5. Abstract:
  6. This module contains the definition of auxilary data structures used in
  7. debugging. Each of the data structures is conditionalized by its own
  8. #ifdef tag.
  9. Author:
  10. Balan Sethu Raman --
  11. --*/
  12. #ifndef _RXDEBUG_H_
  13. #define _RXDEBUG_H_
  14. extern VOID
  15. RxInitializeDebugSupport();
  16. extern VOID
  17. RxTearDownDebugSupport();
  18. #ifdef RX_WJ_DBG_SUPPORT
  19. #define MAX_JOURNAL_BITMAP_SIZE (8 * 1024)
  20. typedef struct _FCB_WRITE_JOURNAL_ {
  21. LIST_ENTRY JournalsList;
  22. PFCB pFcb;
  23. PWCHAR pName;
  24. LONG WritesInitiated;
  25. LONG LowIoWritesInitiated;
  26. LONG LowIoWritesCompleted;
  27. PBYTE pWriteInitiationBitmap;
  28. PBYTE pLowIoWriteInitiationBitmap;
  29. PBYTE pLowIoWriteCompletionBitmap;
  30. BYTE WriteInitiationBitmap[MAX_JOURNAL_BITMAP_SIZE];
  31. BYTE LowIoWriteInitiationBitmap[MAX_JOURNAL_BITMAP_SIZE];
  32. BYTE LowIoWriteCompletionBitmap[MAX_JOURNAL_BITMAP_SIZE];
  33. WCHAR Path[MAX_PATH] ;
  34. } FCB_WRITE_JOURNAL, *PFCB_WRITE_JOURNAL;
  35. // forward declarations
  36. VOID
  37. RxdInitializeWriteJournalSupport();
  38. VOID
  39. RxdTearDownWriteJournalSupport();
  40. VOID
  41. RxdInitializeFcbWriteJournalDebugSupport(
  42. PFCB pFcb);
  43. VOID
  44. RxdTearDownFcbWriteJournalDebugSupport(
  45. PFCB pFcb);
  46. VOID
  47. RxdUpdateJournalOnWriteInitiation(
  48. IN OUT PFCB pFcb,
  49. IN LARGE_INTEGER Offset,
  50. IN ULONG Length);
  51. VOID
  52. RxdUpdateJournalOnLowIoWriteInitiation(
  53. IN OUT PFCB pFcb,
  54. IN LARGE_INTEGER Offset,
  55. IN ULONG Length);
  56. VOID
  57. RxdUpdateJournalOnLowIoWriteCompletion(
  58. IN OUT PFCB pFcb,
  59. IN LARGE_INTEGER Offset,
  60. IN ULONG Length);
  61. #endif // RX_WJ_DBG_SUPPORT
  62. #endif // _RXDEBUG_H_
  63.