Subject: RE: Intel Ether Express 16
To: 'Herb Peyerl' <hpeyerl@beer.org>
From: John A. Maier <root@beta.datastorm.com>
List: netbsd-bugs
Date: 02/14/1996 11:02:35
The problems with messages like the above are:
a) if every driver had "informative" messages like that, then when=20
booting, it's very likely that the autoconfig would scroll off the=20
screen way too fast making diagnosis of other problems more difficult.
I understand the issue of information scrolling off the screen too fast, =
this could easily be solved by displaying the error message then a =
"Press <space> to continue..." message or something along these lines. =
If you think that is a bad idea, consider a user, like me, that couldn't =
get his Exp16 to work, I had no idea what was going on. After looking =
at the code I was rather irritating to find out the card was being =
detected but the code was bailing out because of a simple configuration =
error.
Alternative:
Have a flag you that can be set via a command line parameter at the boot =
loader, i.e. netbsd -diag. If a person, writing a device driver, wants =
to add diagnostic information, they can put in an if statement, hinging =
on this flag. I do, however realize that kernel size is rather =
important, and enough debug messages can make a kernel larger than =
needed. Thus an option could be added to the config file for size =
problems.
#ifdef NOUSERDIAGMSG
if(USER_DIAG_MSG)
printf("ie: Your card is dead!\n");
printf("ie: Press any key to continue.\n");
getchar();
#endif
Additionally, a mode like this would be very nice for cases where I want =
to single step the kernel while loading, just so I have time to read the =
screen and write down what's going on. The author or porter of the =
autodetection code would just put one of these messages before the =
return.
i.e.
#ifdef NOUSERDIAGMSG
if(USER_DIAG_MSG)
printf("ie: Press any key to continue.\n");
getchar();
#endif
return 1; /* everything is okay */
b) Since pretty much every "useful" driver is included in a GENERIC
kernel for installation purposes, those sorts of messages make it=20
very difficult for an installation program to parse and easily determine
the hardware configuration of the machine.
Place the error messages in a particular format and the result messages =
in another.
The "right thing" to do IMO is to more explicitly tell people how to =
setup
the card in the INSTALL notes...=20
It's so easy for us, as propeller heads to say this. Let's face it, the =
EXP 16 never made it into the INSTALL notes and a short debug message, =
as I propose, would have, at least, pointed me in the right direction.
My solution may not be perfect, but it's a step in the right direction, =
in regards to usability.
What is UNIX's biggest complaint? (not everyone at once) It's next to =
unusable by a rank UNIX novice, even when you have the manual(s) in =
front of you and you're a DOS or VMS wizz(closest things to UNIX, I =
know).
I don't want UNIX to become DOS by any stretch of the imagination, but =
at least I can hit the F8 and single step the boot process to tell =
what's wrong, to "...scroll off the screen way too fast making diagnosis =
of other problems more difficult" isn't a problem.
Also, if a 16K mapping works and it can be determined by the config that =
said mapping works, then you could send in patches to at least enable =
that
mapping... It's very difficult to glean any useful information out of
pasted source-code... Patches are much easier to work with.
Agreed, this was a bad move on my part. The NetBSD box I'm working on =
was down so I just too a copy of the if_ie.c I had on this machine and =
hand rewrote it, so it has bugs. Also, in regards to the 16K buffer it =
works, but no thanks to a return 0; I remarked out while debugging. =
There seems to be a solution though, I just need to look at it.
Also, who ever worked on the EXP 16 driver, I have a question, why =
16Kbyte buffers wont work for you.
jam
*************************************************************************=
**
* John A. Maier * Research and Development =
*
* E-mail: johnam@datastorm.com * Datastorm Technologies Inc. =
*
* * Procomm Plus for Windows and DOS =
*
* * (314) 443-3283 =
*
*************************************************************************=
**