[comp.sys.sun] Sun 3/60+CG4 strangeness -- Explained!

spaf@purdue.edu (Gene Spafford) (01/31/89)

A while back, I posted a request concerning running the X11R3 server with
Purdue+ patches on a Sun 3/60+CG4.  I had been having problems with
"bitrot" that no one else seemed to get, and I couldn't find the reason
why.

I found out why.

The 3/60+CG4 combo has a firmware bug not present in other systems.

Yup, you find this only on Sun 3/60's with a CG4, and the bug only occurs
if you are trying to do a 24 bit write  to the frame buffer memory with
the bfins instruction.  How's that for bizarre?  I was told that I am the
first person in the 2 years since the machine was released who has found a
way to exercise the bug.  

I don't know the exact cause of this bug, although I have some informed
speculation based on flags & bus writes.  I do know there is no way to fix
it in software -- it will require a hardware fix.  This means that our
soon-to-be-released set of Purdue/Purdue+ patches using inline assembly
must have a special set of macros for that particular combination.  It
also means that anyone with a Sun 3/60+CG4 cannot take full advantage of
the speedups we've developed.

The problem has been filed as Sun bug report 1016963.  If you have a Sun
3/60+CG4, you can ask your field service creatures if an ECO has been
issued to fix the problem.   If enough people ask, maybe they'll come up
with one :-)

In the meantime, thanks to everyone who responded, including a number of
people at Sun who asked that I not mention their names  (either because
they're humble or because Sun penalizes employees for helping customers?),
folks at CSRI in Toronto who checked the code on lots of different Sun
configurations, and especially Rusty Sanders @ Megatek who came up with a
program that could reliably recreate the problem.

Watch comp.windows.x for an announcement of the Purdue 2.0 patches.
-- 
Gene Spafford
NSF/Purdue/U of Florida  Software Engineering Research Center,
Dept. of Computer Sciences, Purdue University, W. Lafayette IN 47907-2004
Internet:  spaf@cs.purdue.edu	uucp:	...!{decwrl,gatech,ucbvax}!purdue!spaf