DataMuseum.dk

Presents historical artifacts from the history of:

RC9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: @ T t

⟦858a287ca⟧ TextFile

    Length: 2649 (0xa59)
    Types: TextFile
    Notes: @(#)txtrace.h 13.3 (RC International) 91/06/11 */
    Names: »txtrace.h«

Derivation

└─⟦50656ff4a⟧ Bits:30010538 TX 3.1 Coldstart
    └─⟦bbf173f5c⟧ »0004« 
        └─⟦this⟧ »./usr/include/sys/txtrace.h« 

TextFile

/*	@(#)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