[comp.bugs.4bsd.ucb-fixes] V1.71

bostic@OKEEFFE.BERKELEY.EDU (Keith Bostic) (11/17/88)

Subject: MicroVAX 3000 support, #2
Index: sys/vax/ka650.c 4.3BSD-tahoe

Description:
	There's a problem in the machine check handling code
	recently posted for the MicroVAX 3000 machines.
Fix:
	Apply the following patch to vax/ka650.c.

*** /tmp/d13030	Wed Nov 16 17:22:59 1988
--- ka650.c	Wed Nov 16 17:22:28 1988
***************
*** 2,7 ****
--- 2,10 ----
   * Copyright (c) 1988 The Regents of the University of California.
   * All rights reserved.
   *
+  * This code is derived from software contributed to Berkeley by
+  * Mt. Xinu.
+  *
   * Redistribution and use in source and binary forms are permitted
   * provided that the above copyright notice and this paragraph are
   * duplicated in all such forms and that any documentation,
***************
*** 14,20 ****
   * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   *
!  *	@(#)ka650.c	7.3 (Berkeley) 10/31/88
   */
  
  #if VAX650
--- 17,23 ----
   * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   *
!  *	@(#)ka650.c	7.5 (Berkeley) 11/8/88
   */
  
  #if VAX650
***************
*** 124,135 ****
  	register u_int type = mcf->mc65_summary;
  	register u_int i;
  
! 	printf("machine check %x: %s%s\n", type);
  	if (type >= 0x80 && type <= 0x83)
  		type -= (0x80 + 11);
! 	if (type < NMC650)
! 		printf("%s: ", mc650[type]);
! 	printf("vap %x istate1 %x istate2 %x pc %x psl %x\n",
  	    mcf->mc65_mrvaddr, mcf->mc65_istate1, mcf->mc65_istate2,
  	    mcf->mc65_pc, mcf->mc65_psl);
  	printf("dmaser=0x%b qbear=0x%x dmaear=0x%x\n",
--- 127,138 ----
  	register u_int type = mcf->mc65_summary;
  	register u_int i;
  
! 	printf("machine check %x", type);
  	if (type >= 0x80 && type <= 0x83)
  		type -= (0x80 + 11);
! 	if (type < NMC650 && mc650[type])
! 		printf(": %s", mc650[type]);
! 	printf("\n\tvap %x istate1 %x istate2 %x pc %x psl %x\n",
  	    mcf->mc65_mrvaddr, mcf->mc65_istate1, mcf->mc65_istate2,
  	    mcf->mc65_pc, mcf->mc65_psl);
  	printf("dmaser=0x%b qbear=0x%x dmaear=0x%x\n",