Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

lfsdata.c File Reference

#include "lfsprocs.h"

Go to the source code of this file.

Defines

#define Dbg   (DEBUG_TRACE_CATCH_EXCEPTIONS)

Functions

LONG LfsExceptionFilter (IN PEXCEPTION_POINTERS ExceptionPointer)

Variables

LFS_DATA LfsData
LARGE_INTEGER LfsLi0 = {0x00000000, 0x00000000}
LARGE_INTEGER LfsLi1 = {0x00000001, 0x00000000}
LSN LfsZeroLsn = {0x00000000, 0x00000000}


Define Documentation

#define Dbg   (DEBUG_TRACE_CATCH_EXCEPTIONS)
 

Definition at line 27 of file lfsdata.c.


Function Documentation

LONG LfsExceptionFilter IN PEXCEPTION_POINTERS  ExceptionPointer  ) 
 

Definition at line 58 of file lfsdata.c.

References ASSERT, EXCEPTION_CONTINUE_SEARCH, EXCEPTION_EXECUTE_HANDLER, FsRtlIsNtstatusExpected(), and NTSTATUS().

Referenced by LfsCloseLogFile(), LfsDeleteLogHandle(), LfsFlushToLsn(), LfsForceWrite(), LfsInitializeLogFile(), LfsOpenLogFile(), LfsPinOrMapData(), LfsReadLogRecord(), LfsReadNextLogRecord(), LfsReadRestartArea(), LfsSetBaseLsn(), LfsWrite(), and LfsWriteRestartArea().

00064 : 00065 00066 This routine is used to decide if we should or should not handle 00067 an exception status that is being raised. It indicates that we should handle 00068 the exception or bug check the system. 00069 00070 Arguments: 00071 00072 ExceptionCode - Supplies the exception code to being checked. 00073 00074 Return Value: 00075 00076 ULONG - returns EXCEPTION_EXECUTE_HANDLER or bugchecks 00077 00078 --*/ 00079 00080 { 00081 NTSTATUS ExceptionCode = ExceptionPointer->ExceptionRecord->ExceptionCode; 00082 00083 #ifdef NTFS_RESTART 00084 ASSERT( (ExceptionCode != STATUS_DISK_CORRUPT_ERROR) && 00085 (ExceptionCode != STATUS_FILE_CORRUPT_ERROR) ); 00086 #endif 00087 00088 //if (ExceptionCode != STATUS_LOG_FILE_FULL) { 00089 // 00090 // DbgPrint("Status not LOGFILE FULL, ExceptionPointers = %08lx\n", ExceptionPointer); 00091 // DbgBreakPoint(); 00092 //} 00093 00094 if (!FsRtlIsNtstatusExpected( ExceptionCode )) { 00095 00096 return EXCEPTION_CONTINUE_SEARCH; 00097 00098 } else { 00099 00100 return EXCEPTION_EXECUTE_HANDLER; 00101 } 00102 } }


Variable Documentation

LFS_DATA LfsData
 

Definition at line 33 of file lfsdata.c.

Referenced by LfsAllocateSpanningBuffer(), LfsFreeSpanningBuffer(), LfsInitializeLogFile(), LfsInitializeLogFileService(), and LfsOpenLogFile().

LARGE_INTEGER LfsLi0 = {0x00000000, 0x00000000}
 

Definition at line 39 of file lfsdata.c.

Referenced by LfsFindLastLsn(), LfsFlushLfcb(), LfsInitializeLogFile(), and LfsRestartLogFile().

LARGE_INTEGER LfsLi1 = {0x00000001, 0x00000000}
 

Definition at line 40 of file lfsdata.c.

Referenced by LfsAllocateLfcb().

LSN LfsZeroLsn = {0x00000000, 0x00000000}
 

Definition at line 47 of file lfsdata.c.

Referenced by LfsCloseLogFile(), LfsOpenLogFile(), LfsQueryLastLsn(), LfsReadRestartArea(), and LfsWriteRestartArea().


Generated on Sat May 15 19:44:32 2004 for test by doxygen 1.3.7