Subject: low-level error conditions
To: Current Users <current-users@NetBSD.ORG>
From: Jukka Marin <jmarin@pyy.jmp.fi>
List: current-users
Date: 01/29/1997 14:45:41
I've been wondering.. would it be possible to improve the error handling
and/or passing error status to user level programs from the kernel and
drivers?

Like if you try to access a tape drive and there's no tape in it - you get
an "Input/output error" and a cryptic SCSI driver message with a hex dump
in your syslog.  I think the kernel should return a better error code to
the user program (would it be impossible to add a special code for "no
tape in drive" or a generic "no media in drive"?).  Also, I think it would
be better not to log these "normal" error conditions in syslog because
they tend to confuse the user, looking so severe although they're just
informational messages in nature.  (Well, this particular syslog entry
doesn't say a word about the actual problem..)

I'm relatively new to UNIX systems, so I don't know the history all that
well.. but IMHO it would be much better to get sensible, clear error
messages from tar / dd / whatever (in this case) than cryptic syslog messages
which still don't tell what the actual problem is.  Besides, if you don't
look at syslog at all, you'll be lost.

I would like syslog to log only "fatal" errors, not things that are "normal".
I don't think anyone would like the shells writing to syslog whenever a user
mistypes a command, for example.

I have been using Amigas for over 10 years and there you just got a simple
error message in the shell, that's all (or a window telling about the error,
but that's impossible without X).

Also, why do some error conditions (like CD-ROM read errors) never time out?
I don't want to reboot every time I type 'ls' in a shell and my CD-ROM drive
can't read the disc.

A related question:

Why do some error messages go to the dmesg buffer (is that a 'kernel message
buffer'?)?  Some examples of these are "arp - address XXXX overwritten by.."
and some SCSI messages.  Yeah, and the serial port silo overflow messages.
I find this annoying because the system configuration information gets lost
sooner or later and I know no other way of getting it back but a reboot.

These complaints are all based on NetBSD 1.2 and older.

Any comments?

  -jm

-- 

                     ---> http://www.jmp.fi/~jmarin/ <---