lnm_debug.h

Go to the documentation of this file.
00001 //      Module  LNM_DEBUG.H     "X-1"
00002 //
00003 //   Copyright © Compaq Computer Corporation, 2001 All Rights Reserved.
00004 //   Unpublished rights reserved under the copyright laws of the United States.
00005 //
00006 //   The software contained on this media is proprietary to and embodies the
00007 //   confidential technology of Compaq Computer Corporation.  Possession, use,
00008 //   duplication or dissemination of the software and media is authorized only
00009 //   pursuant to a valid written license from Compaq Computer Corporation.
00010 //
00011 //   RESTRICTED RIGHTS LEGEND   Use, duplication, or disclosure by the U.S.
00012 //   Government is subject to restrictions as set forth in Subparagraph
00013 //   (c)(1)(ii) of DFARS 252.227-7013, or in FAR 52.227-19, as applicable.
00014 //
00015 //++
00016 //
00017 //  FACILITY:
00018 //
00019 //      OpenVMS Executive (SYS)
00020 //
00021 //  ABSTRACT:
00022 //
00023 //      This module contains constants and structure definitions for the 
00024 //      logical name tracing utility.
00025 //
00026 //  AUTHOR:
00027 //
00028 //      Christian Moser, March 2001
00029 //
00030 //  MODIFIED BY:
00031 //
00032 //      X-1     CMOS            Christian Moser         21-AUG-2001
00033 //              Initial version.
00034 //
00035 
00036 //
00037 // Define some constants needed for both the debug and the SDA extension
00038 // image
00039 //
00040 #define TRACE_BUFFER_PAGES 128
00041 
00042 #define LNM$K_REV1      1
00043 #define LNM$K_REVISION  LNM$K_REV1
00044 
00045 //
00046 // Define trace entry structure
00047 //
00048 typedef struct _trace_entry {
00049         uint64          timestamp;
00050         uint32          cpuid;
00051         uint32          flag;
00052         uint64          callers_pc;
00053         uint32          pcb;
00054         uint32          epid;
00055         uint32          imgcnt;
00056         char            main_image[24];
00057         char            lnm_string[32];
00058         } TRACE_ENTRY;
00059 
00060 //
00061 // Define trace header structure
00062 //
00063 typedef struct _trace_hdr {
00064         uint32                  idx;
00065         uint32                  max_idx;
00066         unsigned short int      mbo;    
00067         unsigned char           type;   
00068         unsigned char           subtype;
00069         uint32                  scc;
00070         unsigned __int64        size;     
00071         #pragma __required_pointer_size __save  
00072         #pragma __required_pointer_size __long  
00073         TRACE_ENTRY             *entry_ptr;
00074         #pragma __required_pointer_size __restore 
00075         TRACE_ENTRY             entry[1];
00076         } TRACE_HDR;
00077 
00078 
00079 //
00080 // Define shared structure used as communications area between debug image
00081 // and SDA extension image
00082 //
00083 typedef struct _lnm {
00084         void                    (*trace_search_one)();
00085         void                    (*trace_trnlnm)();
00086         unsigned short int      mbo;    
00087         unsigned char           type;        
00088         unsigned char           subtype;     
00089         int                     (*reserved2)();
00090         unsigned __int64        size;     
00091         int                     (*start_trace)();
00092         int                     (*stop_trace)();
00093         #pragma __required_pointer_size __save  
00094         #pragma __required_pointer_size __long
00095         TRACE_HDR               *trace_buffer;          
00096         #pragma __required_pointer_size __restore 
00097         int                     revision;
00098         int                     trace_run;
00099         int                     lnm_flags;
00100         int                     trace_flags;
00101         int                     cpu_flags;
00102         uint32                  reserved_1;
00103         uint64                  reserved_2;
00104         uint64                  reserved_3;
00105         uint64                  reserved_4;
00106         uint64                  scc[32];
00107         uint64                  systime[32];
00108         } LNM;

SourceForge.net Logo
Project space on SourceForge.net