Annotation of 43BSDReno/sys/tahoe/kdbparam.h, revision 1.1.1.1

1.1       root        1: /*
                      2:  * Copyright (c) 1988 Regents of the University of California.
                      3:  * All rights reserved.  The Berkeley software License Agreement
                      4:  * specifies the terms and conditions for redistribution.
                      5:  *
                      6:  *     @(#)kdbparam.h  7.8 (Berkeley) 5/3/90
                      7:  */
                      8: 
                      9: #define DBNAME "kdb\n"
                     10: #define LPRMODE "%R"
                     11: #define OFFMODE "+%R"
                     12: 
                     13: #define        MAXINT  0x7fffffff
                     14: #define        MAXSTOR (KERNBASE - ctob(UPAGES))
                     15: 
                     16: #define        ENTRYMASK       1                       /* check for entry masks */
                     17: #define        ishiddenreg(p)  ((p) <= &kdbreglist[8])
                     18: 
                     19: #define BPT    0x30
                     20: #define KCALL  0xcf
                     21: #define CASEL  0xfc
                     22: #define TBIT   0x10
                     23: 
                     24: #define        KDB_IPL         0xf     /* highest priority software interrupt */
                     25: #define        setsoftkdb()    mtpr(SIRR, KDB_IPL)
                     26: 
                     27: #define        clrsstep()      (kdbpcb.pcb_psl &= ~TBIT)
                     28: #define        setsstep()      (kdbpcb.pcb_psl |= TBIT)
                     29: 
                     30: #define        SETBP(ins)      ((BPT<<24) | ((ins) & 0xffffff))
                     31: 
                     32: #define        getprevpc(fp)   kdbget((off_t)(fp)-8, DSP)      /* pc of caller */
                     33: #define        getprevframe(fp) (kdbget((off_t)(fp), DSP)&~3)  /* fp of caller */
                     34: #define        getnargs(fp)    (((kdbget((off_t)(fp)-4, DSP)&0xffff)-4)/4)
                     35: #define        nextarg(ap)     ((ap) + 4)              /* next argument in list */
                     36: #define        NOFRAME         0                       /* fp at top of call stack */
                     37: 
                     38: #define        issignalpc(pc)  ((unsigned)MAXSTOR < (pc) && (pc) < (unsigned)KERNBASE)
                     39: #define        getsignalpc(fp) kdbget((off_t)(fp)+44, DSP)/* pc of caller before signal */
                     40: 
                     41: #define leng(a)                ((long)((unsigned)(a)))
                     42: #define shorten(a)     (((a) >> 16) & 0xffff)
                     43: #define        itol(a,b)       ((long)(((a) << 16) | ((b) & 0xffff)))
                     44: #define        byte(a)         (((a) >> 24) & 0xff)
                     45: #define        btol(a)         ((long)((a) << 24))
                     46: 
                     47: /* check for address wrap around */
                     48: #define        addrwrap(oaddr,newaddr) \
                     49:        (((oaddr)^(newaddr)) >> 24)
                     50: /*
                     51:  * INSTACK tells whether its argument is a stack address.
                     52:  * INUDOT tells whether its argument is in the (extended) u. area.
                     53:  * These are used for consistency checking and dont have to be exact.
                     54:  *
                     55:  * INKERNEL tells whether its argument is a kernel space address.
                     56:  * KVTOPH trims a kernel virtal address back to its offset
                     57:  * in the kernel address space.
                     58:  */
                     59: #define        INSTACK(x)      (((int)(x)&0xf0000000) == 0xb0000000)
                     60: #define        INUDOT(x)       (((int)(x)&0xf0000000) == 0xb0000000)
                     61: #define        INKERNEL(x)     (((int)(x)&0xf0000000) == 0xc0000000)
                     62: 
                     63: #define        KERNOFF         (KERNBASE + 0x800)      /* start of kernel's text */
                     64: /* #define     KVTOPH(x)       ((x)&~ 0xc0000000) sometimes */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.