tr_debug.h

Go to the documentation of this file.
00001 //      Module  TR_DEBUG.H      "X-1"
00002 //
00003 //
00004 //      Copyright 2001 Compaq Computer Corporation
00005 //    
00006 //      Compaq and the Compaq logo Registered in U.S. Patent and Trademark Office.
00007 //    
00008 //      Confidential computer software. Valid license from Compaq required for
00009 //      possession, use or copying. Consistent with FAR 12.211 and 12.212,
00010 //      Commercial Computer Software, Computer Software Documentation, and
00011 //      Technical Data for Commercial Items are licensed to the U.S. Government
00012 //      under vendors standard commercial license.
00013 //    
00014 //++
00015 //
00016 //  FACILITY:
00017 //
00018 //      OpenVMS Executive (SYS)
00019 //
00020 //  ABSTRACT:
00021 //
00022 //      This module contains constants and structure definitions for the 
00023 //      general purpose tracing utility.
00024 //
00025 //  AUTHOR:
00026 //
00027 //      Christian Moser, January 2001
00028 //
00029 //  MODIFIED BY:
00030 //
00031 //      X-1     CMOS            Christian Moser         31-JAN-2001
00032 //              Initial version.
00033 //
00034 
00035 //
00036 // Define some constants needed for both the debug and the SDA extension
00037 // image
00038 //
00039 #define TRACE_BUFFER_PAGES 128
00040 
00041 #define TR$K_REV1       1
00042 #define TR$K_REVISION   TR$K_REV1
00043 
00044 //
00045 // Define trace entry structure
00046 //
00047 typedef struct _trace_entry {
00048         uint64          timestamp;
00049         uint32          cpuid;
00050         uint32          flag;
00051         char            buffer[112];
00052         } TRACE_ENTRY;
00053 
00054 //
00055 // Define trace header structure
00056 //
00057 typedef struct _trace_hdr {
00058         uint32                  idx;
00059         uint32                  max_idx;
00060         unsigned short int      mbo;    
00061         unsigned char           type;   
00062         unsigned char           subtype;
00063         uint32                  scc;
00064         unsigned __int64        size;     
00065         #pragma __required_pointer_size __save  
00066         #pragma __required_pointer_size __long  
00067         TRACE_ENTRY             *entry_ptr;
00068         #pragma __required_pointer_size __restore 
00069         TRACE_ENTRY             entry[1];
00070         } TRACE_HDR;
00071 
00072 
00073 //
00074 // Define shared structure used as communications area between debug image
00075 // and SDA extension image
00076 //
00077 typedef struct _dbg {
00078         void                    (*debug_print)();
00079         int                     (*debug_reserved1)();
00080         unsigned short int      mbo;    
00081         unsigned char           type;        
00082         unsigned char           subtype;     
00083         int                     (*debug_reserved2)();
00084         unsigned __int64        size;     
00085         int                     (*start_trace)();
00086         int                     (*stop_trace)();
00087         #pragma __required_pointer_size __save  
00088         #pragma __required_pointer_size __long
00089         TRACE_HDR               *trace_buffer;          
00090         #pragma __required_pointer_size __restore 
00091         int                     revision;
00092         int                     trace_run;
00093         int                     spl_flags;
00094         int                     trace_flags;
00095         int                     cpu_flags;
00096         uint32                  reserved_1;
00097         uint64                  reserved_2;
00098         uint64                  reserved_3;
00099         uint64                  reserved_4;
00100         uint64                  scc[32];
00101         uint64                  systime[32];
00102         } TR;

SourceForge.net Logo
Project space on SourceForge.net