ARPAVAX:sam (11/02/82)
From: sam (Sam Leffler) To: unix-wizards The specific machine check is due to marginal parts used in one of the 750 boards. If your local field service branch is not familiar with this problem, have them contact the DEC UNIX Engineering Group in New Hampshire for confirmation and information about which rev boards are "safe for use". In the meantime, the following code may be added to the function machinecheck in the file machdep.c. The code was swiped from VMS and is know to work (some of our 750's were going down every 5 minutes at one point). machinecheck() { ... #if VAX750 case VAX_750: { register struct mc750frame *mcf = (struct mc750frame *)cmcf; printf("\tva %x errpc %x mdr %x smr %x rdtimo %x tbgpar %x cacherr %x\n", mcf->mc5_va, mcf->mc5_errpc, mcf->mc5_mdr, mcf->mc5_svmode, mcf->mc5_rdtimo, mcf->mc5_tbgpar, mcf->mc5_cacherr); printf("\tbuserr %x mcesr %x pc %x psl %x mcsr %x\n", mcf->mc5_buserr, mcf->mc5_mcesr, mcf->mc5_pc, mcf->mc5_psl, mfpr(MCSR)); mtpr(MCESR, 0xf); if ((type&0xf) == MC750_TBPAR) { printf("tbuf par: flushing and returning\n"); mtpr(TBIA, 0); return; } break; } #endif ... }