|
|
DataMuseum.dkPresents historical artifacts from the history of: RC9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: @ T t
Length: 2649 (0xa59)
Types: TextFile
Notes: @(#)txtrace.h 13.3 (RC International) 91/06/11 */
Names: »txtrace.h«
└─⟦50656ff4a⟧ Bits:30010538 TX 3.1 Coldstart
└─⟦bbf173f5c⟧ »0004«
└─⟦this⟧ »./usr/include/sys/txtrace.h«
/* @(#)txtrace.h 13.3 (RC International) 91/06/11 */
#ifndef TXTRACE_SIZE
#define TXTRACE_SIZE 300
#ifndef NULL
#define NULL 0
#endif
#define TXDEBUG
#ifdef LANGUAGE_C
#ifdef TXDEBUG
#ifdef RTE
#ifndef TX_INFO_ADDR
#include "../h/txinfo.h"
#endif
#ifndef RTEINFO
#include "../hrte/rteinfo.h"
#endif
#define TXTRACE(flags, format, arg1, arg2, arg3, arg4) \
{ \
if ( info_table.tx_trace && \
((struct txinfo *)TX_INFO_ADDR)->tx_trace_info->trace_mask & (flags)) \
(*info_table.tx_trace)(format, arg1, arg2, arg3, arg4); \
}
#else
#define TXTRACE(flags, format, arg1, arg2, arg3, arg4) \
{ \
if ( tx_info->tx_trace_info && tx_info->tx_trace_info->trace_mask & (flags)) \
txtrace(format, arg1, arg2, arg3, arg4); \
}
#endif
#else TXDEBUG
#define TXTRACE(flags, format, arg1, arg2, arg3, arg4)
#endif TXDEBUG
struct trace_entry
{
char *text;
int arg1;
int arg2;
int arg3;
int arg4;
u_int pid;
u_int timestamp;
u_int upu;
u_int cpu_timer;
};
struct trace_info
{
int trace_index;
int trace_mask;
int trace_size;
spin_t trace_lock;
struct trace_entry trace_buffer[TXTRACE_SIZE];
};
#endif LANGUAGE_C
/*
* flags
*/
#define TXTR_CLOCK 0x00000001 /* Clock interrupt handler */
#define TXTR_TLB 0x00000002 /* TLB miss handler */
#define TXTR_INIT 0x00000004 /* routines called during init */
#define TXTR_SCHED 0x00000008 /* Scheduler */
#define TXTR_PROCESS 0x00000010 /* newproc/fork */
#define TXTR_EXEC 0x00000020 /* Exec */
#define TXTR_SYSCALL 0x00000040 /* System calls */
#define TXTR_TRAP 0x00000080 /* Trap handler */
#define TXTR_NOFAULT 0x00000100 /* Nofault bus error */
#define TXTR_VM 0x00000200 /* VM */
#define TXTR_SWAP 0x00000400 /* swapin/swapout */
#define TXTR_SWTCH 0x00000800 /* swtch, setrq, remrq */
#define TXTR_DISK 0x00001000 /* disk i/o */
#define TXTR_TTY 0x00002000 /* mux i/o */
#define TXTR_TAPE 0x00004000 /* tape i/o */
#define TXTR_INTR 0x00008000 /* interrupt handling */
#define TXTR_TEXT 0x00010000 /* shared text stuff */
#define TXTR_CACHE 0x00020000 /* cache handling */
#define TXTR_SIGNAL 0x00040000 /* signal handling */
#define TXTR_FPINTR 0x00080000 /* fp interrupt handling */
#define TXTR_TXQUEUE 0x00100000 /* tx queues / tx semaphores */
#define TXTR_IUPDATE 0x00200000 /* inode update */
#define TXTR_SIB 0x00400000 /* sib performance */
#define TXTR_PID 0x00800000 /* pid handling */
#define TXTR_SID 0x01000000 /* pid handling */
#define TXTR_ZOM 0x02000000 /* remove zombie */
#define TXTR_CTTY 0x04000000 /* controlling TTY stuff */
#define TXTR_TMP 0x80000000 /* for temporary use */
#endif