[net.unix-wizards] 4.2 disk driver bug

gc@vax135.UUCP (Eugene Cristofor) (03/08/85)

There is a bug in the 4.2 disk driver: bad sector forwarding
does not work for EAGLEs with System Industries controller.
Problem is that the SI controller clobbers the MBA registers -
one must use the drive registers `hpdc' and `hpda' to find
where the BSE error has occurred.

A fix is available - all changes are in vaxmba/hp.c

gene cristofor
vax135!gc

ed@mtxinu.UUCP (Ed Gould) (03/22/85)

> There is a bug in the 4.2 disk driver: bad sector forwarding
> does not work for EAGLEs with System Industries controller.
> Problem is that the SI controller clobbers the MBA registers -
> one must use the drive registers `hpdc' and `hpda' to find
> where the BSE error has occurred.

The problem is in the SI controller, not the driver.  Various of us
have been complaining to SI for *years* to get their controllers to
emulate the DEC controllers correctly.
 
> A fix is available - all changes are in vaxmba/hp.c

A workaround, perhaps.  The fix would need to be in the controller
itself.  SI has a driver that they'll supply.  It has code in it
that comes from Berkeley, from me, from Si Field, and others to
deal with their controller.  Their driver is about 70% different,
on a line-by line basis (counting lines with differences), than
the 4.2 driver.  I doubt that it will correctly work with either
DEC or Emulex controllers so for some of us, it's not an option.

> gene cristofor
> vax135!gc

-- 
Ed Gould		    mt Xinu, 739 Allston Way, Berkeley, CA  94710  USA
{ucbvax,decvax}!mtxinu!ed   +1 415 644 0146

dfk@unido.UUCP (03/23/85)

About the same thing happened when we got one of the first SC7000s from
Emulex. The MBA bytecount was off after hitting a bad block (BSE). 
This doesn't happen on a SC750 we have in another machine. We checked
with another site that had an Eagle/SC7000 pair just installed:
Same symptoms. 

So we assumed a firmware bug, put a quick fix in hp.c and got on the 
phone to emulex. We were soon talking to someone very competent at 
their London office. Although there were some relaying problems 
Dortmund <-> London <-> USA they made very sure to understand the problem. 
Not one word about driver kludges and "it works with VMS". If it didn't 
work like DEC they wouldn't argue.

About six weeks later (remember this is Europe) we had new firmware
and now it works. 

-Daniel Karrenberg <dfk@unido.uucp>

NB: I am not affiliated with Emulex, just a satisfied customer.

jeff@voder.UUCP (Jeff Gilliam) (04/06/85)

There seems to be some confusion regarding the problems the 4.2 hp disk
driver has when used with Systems Industries controllers.  The difficulty
is that the SI controller may buffer up to 16 sectors internally.  When
a BSE or ECC error occurs the mba byte count register is correct, but not
relevant to where the *error* is.  The driver can be changed to calculate
the error location from the hpdc and hpda registers; this method works for
both SI controllers and DEC controllers.  The total changes (plus another
fix to increase throughput by disabling the lookahead calculation) are
only about a dozen lines.  Send email if you're interested.

-- 

Jeff Gilliam	{ucbvax,ihnp4!nsc}!voder!jeff