[net.bugs.usg] Orphaned Response

jab@uokvax.UUCP (01/31/84)

#R:rna:-18700:uokvax:15500001:37777777600:1013
uokvax!jab    Jan 28 11:36:00 1984

/***** uokvax:net.bugs.usg / rna!dan /  4:19 am  Dec 13, 1983 */

	Has anyone booted the 5.0 distribution off a 11/750 with an Eagle,
SC750 and a TS11 ?
	The root filesystem seems to load but the boot program flutters
and doesn't load UNIX. Its probably a case of an imperfect emulation. I had
the SC750/Eagle set for RM80 emulation.
	Presumably the driver thinks its an RM80 with 31 sector tracks and
the Eagle/SC750 has 47 sector tracks. So it must be a constant where that I
can patch.
	Any ideas ?
						Thanks.
						Dan Ts'o
						...cmcl2!rna!dan
/* ---------- */

Speaking of Emulex controllers, I have seen a similar problem where the 
SC780/9766 combination doesn't QUITE look like an rm05. VMS and VMS diagnostics
seem quite happy with the drive, but the System V boot block acts quite 
confused.

I wouldn't be suprised if it's an imperfect emulation, with timing being the
problem. (A friend saw such timing problems on an 11/70 Emulex controller.)
Has anyone else seen this?

	Jeff Bowles
	Lisle IL

kah@hpfclq.UUCP (kah) (11/15/84)

/***** hpfclq:net.bugs.usg / clyde! /  6:59 pm  Oct 15, 1984*/
In the USG (AT&T) Unix System V Release 2 Programmer Reference Manual
lists the calling sequence for setvbuf(3S) [under setbuf(3S)] as:

int setvbuf (stream, buf, type, size)

the actual code, however, is looking for:

int setvbuf (stream, type, buf, size)

This problem will be reported to the Unix Hotline shortly.  ...
/* ---------- */

The mixup in parameter order is the least of the problems with the V.2
setvbuf source.  The source contains numerous bugs including:
	(1) They never set iop->_base = buf;
	    I.e., the parameter "buf" is never even used!
	(2) If the user does not provide a buffer, the code uses malloc
	    to generate one.  But it doesn't set the _IOMYBUF bit so
	    that the buffer space can be freed later when the file is
	    closed.
	(3) The tests to determine when a malloc should be done are 
	    wrong .
	  ...

In short the "setvbuf.c" source file is a "basket case"; if you need 
the functionality of setvbuf, I suggest you write your own.  That's
what we did.

Kathy Harris
Hewlett Packard, Fort Collins Systems Division
hpfcla!kah