|
|
1.1 ! root 1: /* ! 2: * mwc_only.h is for internal definitions. ! 3: */ ! 4: ! 5: /* ! 6: * Control flags for tracing features. ! 7: * ! 8: * t_piggy bits: ! 9: * 0x0001 pexit() ! 10: * 0x0002 286 system calls ! 11: * 0x0004 386 system calls ! 12: * 0x0008 uioctl() ! 13: * 0x0020 ssread()/sswrite() in io.386/ss.c ! 14: * 0x0200 uread() in coh.386/sys3.c ! 15: * 0x0400 ssblock() in io.386/ss.c ! 16: * 0x1000 XP_DATA_IN/OUT in state machine in io.386/ss.c ! 17: * 0x10000 open() bad exit values in coh.386/sys3.c ! 18: * ! 19: * t_hal bits: ! 20: * 0x0001 TCSETA/TCSETAF/TCSETAW ioctl's ! 21: * 0x0002 TIOCSETP/TIOCSETN ioctl's ! 22: * 0x0004 al[01] verbose mode (see alx.c); asy devmsgs ! 23: * 0x0008 obrk() ! 24: * 0x0010 pipe open/read/write ! 25: * 0x0020 1= NO c_grow() calls; alx overruns ! 26: * 0x0040 monitor number of free clists ! 27: * 0x0080 '+' when asleep waiting for free clist ! 28: * 0x0100 trace c_grow() calls ! 29: * 0x0200 run check_slot() on alloc() and ubrk() ! 30: * 0x0400 async opens, closes, speed changes ! 31: * 0x0800 asy, all interrupts ! 32: * 0x1000 explanation of page faults ! 33: * 0x2000 ! 34: * 0x4000 all traps ! 35: * 0x8000 ubrk() ! 36: * ! 37: * 0x0001 0000 ! 38: * 0x0002 0000 ! 39: * ! 40: * t_vlad bits: ! 41: * 0x0001 ! 42: * 0x0002 fcntl ! 43: * ! 44: * t_errno - trace u.u_error settings ! 45: * t_con - trace console events ! 46: * ! 47: * t_msgq bits: ! 48: * 0x0001 memory alloc ! 49: * 0x0002 permissions ! 50: */ ! 51: ! 52: ! 53: /* ! 54: * T_PIGGY() is for piggy controlled tracing. ! 55: */ ! 56: extern unsigned t_piggy; ! 57: #define T_PIGGY(flag, command) { \ ! 58: if (t_piggy&flag) { \ ! 59: command; \ ! 60: } \ ! 61: } ! 62: ! 63: /* ! 64: * T_HAL() is for hal controlled tracing. ! 65: */ ! 66: extern unsigned t_hal; ! 67: #define T_HAL(flag, command) { \ ! 68: if (t_hal&flag) { \ ! 69: command; \ ! 70: } \ ! 71: } ! 72: ! 73: /* ! 74: * T_VLAD() is for vlad controlled tracing. ! 75: */ ! 76: extern unsigned t_vlad; ! 77: #define T_VLAD(flag, command) { \ ! 78: if (t_vlad&flag) { \ ! 79: command; \ ! 80: } \ ! 81: } ! 82: ! 83: /* ! 84: * T_MSGQ() is for message queue controlled tracing. ! 85: */ ! 86: extern unsigned t_msgq; ! 87: #define T_MSGQ(flag, command) { \ ! 88: if (t_msgq&flag) { \ ! 89: command; \ ! 90: } \ ! 91: } ! 92: ! 93: /* ! 94: * SET_U_ERROR() is for error tracing. ! 95: */ ! 96: extern unsigned t_errno; ! 97: #define SET_U_ERROR(errno, msg) { \ ! 98: u.u_error = (errno); \ ! 99: if (t_errno) { \ ! 100: printf("u_error: %d: %s\n", (errno), msg); \ ! 101: } \ ! 102: } ! 103: ! 104: /* ! 105: * T_CON() is for video & keyboard tracing. ! 106: */ ! 107: extern unsigned t_con; ! 108: #define T_CON(flag, command) { \ ! 109: if (t_con&flag) { \ ! 110: command; \ ! 111: } \ ! 112: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.