jhl@tty3b.UUCP (08/08/83)
We are running UNIX 4.0 on PDP-11/70's with RP06 disk drives on an RH70 controller. We recently got an ML11 RAM disk unit installed, and consequently made the switch from the standard `hp' driver to the `gd' general disk driver, which supports RP06's as well as ML11's. The ML11 seems to work fine, but now we are having problems with the RP06's. We first noticed that something was wrong when our /usr file system ran out of space; it turned out that /usr/adm/errfile had suddenly grown to over a megabyte. Errpt showed that an error had been logged every few seconds by the controller for the RP06's, and for each one logged, 40 or 50 THOUSAND had gone unrecorded. Turning off the error demon has so far `solved' the problem -- we don't get a humongous errfile (and system performance doesn't seem to be greatly affected) -- but of course now we don't get any error logging at all. I tried looking at the source code to see where the error was recognized and logged, but I couldn't tell for sure what was going on. However, by comparing gd.c to hp.c, I noticed that in the interrupt routines (gdintr/hpintr) there was a difference in the logic of the else clause after the first if: (gd.c) } else { rp->cs1 = IE; ... (hp.c) } else { if (as == 0) rp->hpcs1 = IE; ... Is it a bug to enable interrupts unconditionally, and could this be the cause of our problem? Any help would be greatly appreciated. Jonathon Luers Teletype Corporation ...ihnp4!tty3b!jhl