Annotation of researchv10no/cmd/ccom/vax/tests/l.i, revision 1.1

1.1     ! root        1: typedef int    (*SIG_TYP)();
        !             2: SIG_TYP signal();
        !             3: typedef        unsigned char   u_char;
        !             4: typedef        unsigned short  u_short;
        !             5: typedef        unsigned int    u_int;
        !             6: typedef        unsigned long   u_long;
        !             7: typedef        struct  _physadr { int r[1]; } *physadr;
        !             8: typedef        int     daddr_t;
        !             9: typedef        char *  caddr_t;
        !            10: typedef        u_short ino_t;
        !            11: typedef        int     swblk_t;
        !            12: typedef        int     size_t;
        !            13: typedef        int     time_t;
        !            14: typedef        int     label_t[14];
        !            15: typedef        short   dev_t;
        !            16: typedef        int     off_t;
        !            17: typedef long   portid_t;
        !            18: typedef struct fd_set { int fds_bits[1]; } fd_set;
        !            19: int    hz;                     
        !            20: int    timezone;               
        !            21: int    dstflag;                
        !            22: char   canonb[256              ];      
        !            23: extern char    version[];              
        !            24: int    lbolt;                  
        !            25: time_t time;                   
        !            26: time_t bootime;                
        !            27: long   trannum;                
        !            28: int    hand;                   
        !            29: int    nblkdev;
        !            30: int    nchrdev;
        !            31: int    nstream;                
        !            32: int    nswdev;                 
        !            33: int    mpid;                   
        !            34: char   runin;                  
        !            35: char   runout;                 
        !            36: int    runrun;                 
        !            37: char   kmapwnt;                
        !            38: char   curpri;                 
        !            39: int    maxmem;                 
        !            40: int    physmem;                
        !            41: int    nswap;                  
        !            42: int    updlock;                
        !            43: daddr_t        rablock;                
        !            44: extern int intstack[];         
        !            45: dev_t  rootdev;                
        !            46: dev_t  dumpdev;                
        !            47: long   dumplo;                 
        !            48: dev_t  swapdev;                
        !            49: dev_t  argdev;                 
        !            50: dev_t  pipedev;                
        !            51: extern int icode[];            
        !            52: extern int szicode;            
        !            53: dev_t  getmdev();
        !            54: daddr_t        bmap();
        !            55: caddr_t        calloc();
        !            56: unsigned max();
        !            57: unsigned min();
        !            58: int    memall();
        !            59: int    uchar(), schar();
        !            60: int    vmemall();
        !            61: char   *wmemall();
        !            62: swblk_t        vtod();
        !            63: extern struct sysent
        !            64: {
        !            65:        int     sy_narg;                
        !            66:        int     (*sy_call)();           
        !            67: } sysent[];
        !            68: extern char    vmmap[];                
        !            69: int    umbabeg,umbaend;        
        !            70: int    noproc;                 
        !            71: extern int catcher[256];
        !            72: char   *panicstr;
        !            73: int    wantin;
        !            74: int    boothowto;              
        !            75: struct map {
        !            76:        struct  mapent *m_limit;        
        !            77:        char    *m_name;                
        !            78: };
        !            79: struct mapent
        !            80: {
        !            81:        int     m_size;         
        !            82:        int     m_addr;         
        !            83: };
        !            84: struct nexus {
        !            85:        union nexcsr {
        !            86:                long    nex_csr;
        !            87:                u_char  nex_type;
        !            88:        } nexcsr;
        !            89:        long    nex_pad[0x2000 / sizeof (long) - 1];
        !            90: };
        !            91: struct pte
        !            92: {
        !            93: unsigned int   pg_pfnum:21,            
        !            94:                :2,
        !            95:                pg_vreadm:1,            
        !            96:                pg_swapm:1,             
        !            97:                pg_fod:1,               
        !            98:                pg_m:1,                 
        !            99:                pg_prot:4,              
        !           100:                pg_v:1;                 
        !           101: };
        !           102: struct hpte
        !           103: {
        !           104: unsigned int   pg_pfnum:21,
        !           105:                :2,
        !           106:                pg_high:9;              
        !           107: };
        !           108: struct fpte
        !           109: {
        !           110: unsigned int   pg_blkno:20,            
        !           111:                pg_fileno:5,            
        !           112:                pg_fod:1,               
        !           113:                :1,
        !           114:                pg_prot:4,
        !           115:                pg_v:1;
        !           116: };
        !           117: struct bufhd
        !           118: {
        !           119:        long    b_flags;                
        !           120:        struct  buf *b_forw, *b_back;   
        !           121: };
        !           122: struct buf
        !           123: {
        !           124:        long    b_flags;                
        !           125:        struct  buf *b_forw, *b_back;   
        !           126:        struct  buf *av_forw, *av_back; 
        !           127:        long    b_bcount;               
        !           128:        short   b_error;                
        !           129:        dev_t   b_dev;                  
        !           130:        union {
        !           131:            caddr_t b_addr;             
        !           132:            int *b_words;               
        !           133:            struct filsys *b_filsys;    
        !           134:            struct dinode *b_dino;      
        !           135:            daddr_t *b_daddr;           
        !           136:        } b_un;
        !           137:        daddr_t b_blkno;                
        !           138:        long    b_resid;                
        !           139:        struct  proc *b_proc;           
        !           140: };
        !           141: struct mba_regs
        !           142: {
        !           143:        int     mba_csr;                
        !           144:        int     mba_cr;                 
        !           145:        int     mba_sr;                 
        !           146:        int     mba_var;                
        !           147:        int     mba_bcr;                
        !           148:        int     mba_dr;
        !           149:        int     mba_pad1[250];
        !           150:        struct mba_drv {                
        !           151:                int     mbd_cs1;                
        !           152:                int     mbd_ds;                 
        !           153:                int     mbd_er1;                
        !           154:                int     mbd_mr1;                
        !           155:                int     mbd_as;                 
        !           156:                int     mbd_da;                 
        !           157:                int     mbd_dt;                 
        !           158:                int     mbd_la;                 
        !           159:                int     mbd_sn;                 
        !           160:                int     mbd_of;                 
        !           161:                int     mbd_fill[22];
        !           162:        } mba_drv[8];
        !           163:        struct  pte mba_map[256];       
        !           164:        int     mba_pad2[256*5];        
        !           165: };
        !           166: struct mba_hd {
        !           167:        short   mh_active;              
        !           168:        short   mh_ndrive;              
        !           169:        struct  mba_regs *mh_mba;       
        !           170:        struct  mba_regs *mh_physmba;   
        !           171:        struct  mba_device *mh_mbip[8]; 
        !           172:        struct  mba_device *mh_actf;    
        !           173:        struct  mba_device *mh_actl;    
        !           174: };
        !           175: struct mba_device {
        !           176:        struct  mba_driver *mi_driver;
        !           177:        short   mi_unit;        
        !           178:        short   mi_mbanum;      
        !           179:        short   mi_drive;       
        !           180:        short   mi_dk;          
        !           181:        short   mi_alive;       
        !           182:        short   mi_type;        
        !           183:        struct  buf mi_tab;     
        !           184:        struct  mba_device *mi_forw;
        !           185:        struct  mba_regs *mi_mba;
        !           186:        struct  mba_drv *mi_drv;
        !           187:        struct  mba_hd *mi_hd;
        !           188: };
        !           189: struct mba_slave {
        !           190:        struct  mba_driver *ms_driver;
        !           191:        short   ms_ctlr;                
        !           192:        short   ms_unit;                
        !           193:        short   ms_slave;               
        !           194:        short   ms_alive;
        !           195: };
        !           196: struct mba_driver {
        !           197:        int     (*md_attach)();         
        !           198:        int     (*md_slave)();          
        !           199:        int     (*md_ustart)();         
        !           200:        int     (*md_start)();          
        !           201:        int     (*md_dtint)();          
        !           202:        int     (*md_ndint)();          
        !           203:        short   *md_type;               
        !           204:        char    *md_dname, *md_sname;   
        !           205:        struct  mba_device **md_info;   
        !           206: };
        !           207:                                        
        !           208:                                        
        !           209: struct vmmeter
        !           210: {
        !           211:        unsigned v_swtch;       
        !           212:        unsigned v_trap;        
        !           213:        unsigned v_syscall;     
        !           214:        unsigned v_intr;        
        !           215:        unsigned v_pdma;        
        !           216:        unsigned v_pswpin;      
        !           217:        unsigned v_pswpout;     
        !           218:        unsigned v_pgin;        
        !           219:        unsigned v_pgout;       
        !           220:        unsigned v_pgpgin;      
        !           221:        unsigned v_pgpgout;     
        !           222:        unsigned v_intrans;     
        !           223:        unsigned v_pgrec;       
        !           224:        unsigned v_xsfrec;      
        !           225:        unsigned v_xifrec;      
        !           226:        unsigned v_exfod;       
        !           227:        unsigned v_zfod;        
        !           228:        unsigned v_vrfod;       
        !           229:        unsigned v_nexfod;      
        !           230:        unsigned v_nzfod;       
        !           231:        unsigned v_nvrfod;      
        !           232:        unsigned v_pgfrec;      
        !           233:        unsigned v_faults;      
        !           234:        unsigned v_scan;        
        !           235:        unsigned v_rev;         
        !           236:        unsigned v_seqfree;     
        !           237:        unsigned v_dfree;       
        !           238:        unsigned v_swpin;       
        !           239:        unsigned v_swpout;      
        !           240: };
        !           241: struct vmtotal
        !           242: {
        !           243:        short   t_rq;           
        !           244:        short   t_dw;           
        !           245:        short   t_pw;           
        !           246:        short   t_sl;           
        !           247:        short   t_sw;           
        !           248:        int     t_vm;           
        !           249:        int     t_avm;          
        !           250:        short   t_rm;           
        !           251:        short   t_arm;          
        !           252:        int     t_vmtxt;        
        !           253:        int     t_avmtxt;       
        !           254:        short   t_rmtxt;        
        !           255:        short   t_armtxt;       
        !           256:        short   t_free;         
        !           257: };
        !           258: struct forkstat
        !           259: {
        !           260:        int     cntfork;
        !           261:        int     cntvfork;
        !           262:        int     sizfork;
        !           263:        int     sizvfork;
        !           264: };
        !           265: struct swptstat
        !           266: {
        !           267:        int     pteasy;         
        !           268:        int     ptexpand;       
        !           269:        int     ptshrink;       
        !           270:        int     ptpack;         
        !           271: };
        !           272: struct uba_regs
        !           273: {
        !           274:        int     uba_cnfgr;              
        !           275:        int     uba_cr;                 
        !           276:        int     uba_sr;                 
        !           277:        int     uba_dcr;                
        !           278:        int     uba_fmer;               
        !           279:        int     uba_fubar;              
        !           280:        int     pad1[2];
        !           281:        int     uba_brsvr[4];
        !           282:        int     uba_brrvr[4];           
        !           283:        int     uba_dpr[16];            
        !           284:        int     pad2[480];
        !           285:        struct  pte uba_map[496];       
        !           286:        int     pad3[16];               
        !           287: };
        !           288:  
        !           289:  
        !           290: struct uba_hd {
        !           291:        struct  uba_regs *uh_uba;       
        !           292:        struct  uba_regs *uh_physuba;   
        !           293:        int     (**uh_vec)();           
        !           294:        struct  uba_device *uh_actf;    
        !           295:        struct  uba_device *uh_actl;    
        !           296:        short   uh_mrwant;              
        !           297:        short   uh_bdpwant;             
        !           298:        int     uh_bdpfree;             
        !           299:        int     uh_hangcnt;             
        !           300:        int     uh_zvcnt;               
        !           301:        int     uh_errcnt;              
        !           302:        int     uh_lastiv;              
        !           303:        short   uh_users;               
        !           304:        short   uh_xclu;                
        !           305:        struct  map *uh_map;            
        !           306: };
        !           307: struct uba_ctlr {
        !           308:        struct  uba_driver *um_driver;
        !           309:        short   um_ctlr;        
        !           310:        short   um_ubanum;      
        !           311:        short   um_alive;       
        !           312:        int     (**um_intr)();  
        !           313:        caddr_t um_addr;        
        !           314:        struct  uba_hd *um_hd;
        !           315:        int     um_cmd;         
        !           316:        int     um_ubinfo;      
        !           317:        struct  buf um_tab;     
        !           318: };
        !           319: struct uba_device {
        !           320:        struct  uba_driver *ui_driver;
        !           321:        short   ui_unit;        
        !           322:        short   ui_ctlr;        
        !           323:        short   ui_ubanum;      
        !           324:        short   ui_slave;       
        !           325:        int     (**ui_intr)();  
        !           326:        caddr_t ui_addr;        
        !           327:        short   ui_dk;          
        !           328:        int     ui_flags;       
        !           329:        short   ui_alive;       
        !           330:        short   ui_type;        
        !           331:        caddr_t ui_physaddr;    
        !           332:        struct  uba_device *ui_forw;
        !           333:        struct  uba_ctlr *ui_mi;
        !           334:        struct  uba_hd *ui_hd;
        !           335: };
        !           336: struct uba_driver {
        !           337:        int     (*ud_probe)();          
        !           338:        int     (*ud_slave)();          
        !           339:        int     (*ud_attach)();         
        !           340:        int     (*ud_dgo)();            
        !           341:        u_short *ud_addr;               
        !           342:        char    *ud_dname;              
        !           343:        struct  uba_device **ud_dinfo;  
        !           344:        char    *ud_mname;              
        !           345:        struct  uba_ctlr **ud_minfo;    
        !           346:        short   ud_xclu;                
        !           347: };
        !           348: union cpusid {
        !           349:        int     cpusid;
        !           350:        struct cpuany {
        !           351:                u_int   :24,
        !           352:                        cp_type:8;
        !           353:        } cpuany;
        !           354:        struct cpu780 {
        !           355:                u_int   cp_sno:12,              
        !           356:                        cp_plant:3,             
        !           357:                        cp_eco:9,               
        !           358:                        cp_type:8;              
        !           359:        } cpu780;
        !           360:        struct cpu750 {
        !           361:                u_int   cp_hrev:8,              
        !           362:                        cp_urev:8,              
        !           363:                        :8,
        !           364:                        cp_type:8;              
        !           365:        } cpu750;
        !           366:        
        !           367: };
        !           368: struct percpu {
        !           369:        short   pc_cputype;             
        !           370:        short   pc_nnexus;              
        !           371:        struct  nexus *pc_nexbase;      
        !           372:        caddr_t *pc_umaddr;             
        !           373:        short   pc_nubabdp;             
        !           374:        short   pc_haveubasr;           
        !           375:        short   *pc_nextype;            
        !           376: };
        !           377: struct scb {
        !           378:        int     (*scb_stray)();         
        !           379:        int     (*scb_machchk)();       
        !           380:        int     (*scb_kspinval)();      
        !           381:        int     (*scb_powfail)();       
        !           382:        int     (*scb_resinstr)();      
        !           383:        int     (*scb_custinst)();      
        !           384:        int     (*scb_resopnd)();       
        !           385:        int     (*scb_resaddr)();       
        !           386:        int     (*scb_acv)();           
        !           387:        int     (*scb_tnv)();           
        !           388:        int     (*scb_tracep)();        
        !           389:        int     (*scb_bpt)();           
        !           390:        int     (*scb_compat)();        
        !           391:        int     (*scb_arith)();         
        !           392:        int     (*scb_stray2)();
        !           393:        int     (*scb_stray3)();
        !           394:        int     (*scb_chmk)();          
        !           395:        int     (*scb_chme)();          
        !           396:        int     (*scb_chms)();          
        !           397:        int     (*scb_chmu)();          
        !           398:        int     (*scb_sbisilo)();       
        !           399:        int     (*scb_cmrd)();          
        !           400:        int     (*scb_sbialert)();      
        !           401:        int     (*scb_sbiflt)();        
        !           402:        int     (*scb_wtime)();         
        !           403:        int     (*scb_stray4[8])();
        !           404:        int     (*scb_soft[15])();      
        !           405:        int     (*scb_timer)();         
        !           406:        int     (*scb_stray5[7])();
        !           407:        int     (*scb_stray6[4])();
        !           408:        int     (*scb_csdr)();          
        !           409:        int     (*scb_csdx)();          
        !           410:        int     (*scb_ctr)();           
        !           411:        int     (*scb_ctx)();           
        !           412:        int     (*scb_ipl14[16])();     
        !           413:        int     (*scb_ipl15[16])();     
        !           414:        int     (*scb_ipl16[16])();     
        !           415:        int     (*scb_ipl17[16])();     
        !           416:        int     (*scb_ubaint[128])();   
        !           417: };
        !           418: struct mcr {
        !           419:        int     mc_reg[3];
        !           420: };
        !           421: unifind(vubp, pubp, vumem, pumem, memmap)
        !           422:        struct uba_regs *vubp, *pubp;
        !           423:        caddr_t vumem, pumem;
        !           424:        struct pte *memmap;
        !           425: {
        !           426:                
        !           427: 
        !           428: 
        !           429: 
        !           430:        struct uba_hd *uhp;
        !           431: 
        !           432:        int i, haveubasr = 0;
        !           433:        for (i = 0; i < 128; i++)
        !           434:                uhp->uh_vec[i] =
        !           435:                                ((int (*)())(((int)&catcher[i*2])+ 1));
        !           436: }

unix.superglobalmegacorp.com

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