fix several botches in branch merge
authorKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Mon, 29 Nov 1982 08:28:01 +0000 (00:28 -0800)
committerKirk McKusick <mckusick@ucbvax.Berkeley.EDU>
Mon, 29 Nov 1982 08:28:01 +0000 (00:28 -0800)
SCCS-vsn: sys/vax/uba/va.c 4.18

usr/src/sys/vax/uba/va.c

index d630cb4..65208d3 100644 (file)
@@ -1,4 +1,4 @@
-/*     va.c    4.18    82/11/27        */
+/*     va.c    4.18    82/11/28        */
 
 #include "va.h"
 #if NVA > 0
 
 #include "va.h"
 #if NVA > 0
@@ -141,7 +141,8 @@ vaopen(dev)
        int error;
        int unit = VAUNIT(dev);
 
        int error;
        int unit = VAUNIT(dev);
 
-           (ui = vadinfo[VAUNIT(dev)]) == 0 || ui->ui_alive == 0)
+       if (unit >= NVA || (sc = &va_softc[unit])->sc_openf ||
+           (ui = vadinfo[unit]) == 0 || ui->ui_alive == 0)
                return (ENXIO);
        vaaddr = (struct vadevice *)ui->ui_addr;
        sc->sc_openf = 1;
                return (ENXIO);
        vaaddr = (struct vadevice *)ui->ui_addr;
        sc->sc_openf = 1;
@@ -446,6 +447,13 @@ vareset(uban)
                else
                        vaaddr->vacsh = VAPRINTPLOT;
                DELAY(10000);
                else
                        vaaddr->vacsh = VAPRINTPLOT;
                DELAY(10000);
+               sc->sc_iostate = VAS_IDLE;
+               um->um_tab.b_actf->b_active = 0;
+               um->um_tab.b_actf->b_actf = um->um_tab.b_actf->b_actl = 0;
+               if (um->um_ubinfo) {
+                       printf("<%d>", (um->um_ubinfo >> 28) & 0xf);
+                       um->um_ubinfo = 0;
+               }
                (void) vastart(um);
        }
 }
                (void) vastart(um);
        }
 }