no more errno after device read?

Thomas Doerfler Thomas.Doerfler at imd-systems.de
Tue Jun 12 13:21:02 UTC 2001


Hi,

I am currently fussing around with PPP-related error handling under 
rtems-4.5.0 (the released sources, not a snapshot). I am suprised to 
see, that "errno" is no longer set, when an error occures in the 
device drivers read function, although it was set under rtems-4.0.0.

I know that there were significant changes due to IMFS 
infrastructure. Under rtems-4.0.0, the device driver returned an 
error code to __rtems_read (file: libio.c), and there it was 
translated into errno using rtems_libio_errno(). 
Under rtems-4.5.0, the corresponding function device_read (file: 
deviceio.c) returns a -1 if an error was reported, but does not set 
errno.

According to the Linux man pages, "read()" should set errno if an 
error occured, so I think it is a bit of an illegal shortcut to drop 
any error reason code in device_read().

Has this bug already been discussed? (or even fixed?)

bye,
	Thomas.

--------------------------------------------
IMD Ingenieurbuero fuer Microcomputertechnik
Thomas Doerfler           Herbststrasse 8
D-82178 Puchheim          Germany
email:    Thomas.Doerfler at imd-systems.de
PGP public key available at: http://www.imd-systems.de/pgp_key.htm



More information about the users mailing list