On errno

Poul-Henning Kamp phk at phk.freebsd.dk
Mon Mar 30 11:43:30 PDT 2009


In message <8321954E-5CFF-45F9-9F87-BE83659E4C8D at mac.com>, Marcel Moolenaar wri
tes:

>With so many drivers returning ENXIO whenever something (i.e
>anything) is wrong, how meaningful is ENXIO in diagnosing
>problems?
>
>What do the various standards dictate or allow us to do?

Long time ago, I proposed a scheme where a process can register
a userland error-text buffer with the kernel.

Whenever a system call returns with error, the kernel has the
opportunity to write an explanatory text in the registered
buffer (if there is one).

That is not only backwards and standards compatible, but it is also
much more expressive than errno.

If we start with teaching err(3) function about it, we even get
a lot of coverage right away.

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.


More information about the freebsd-arch mailing list