-\end{description}
-
-
-\begin{description}
-%\item \errcode{EBADRPC} \textit{}.
-%\item \errcode{ERPCMISMATCH} \textit{}.
-%\item \errcode{EPROGUNAVAIL} \textit{}.
-%\item \errcode{EPROGMISMATCH} \textit{}.
-%\item \errcode{EPROCUNAVAIL} \textit{}.
-%\item \errcode{EAUTH} \textit{}.
-%\item \errcode{ENEEDAUTH} \textit{}.
-%\item \errcode{EBACKGROUND} \textit{}.
-%\item \errcode{EDIED} \textit{}.
-%\item \errcode{ED} \textit{}.
-%\item \errcode{EGREGIOUS} \textit{}.
-%\item \errcode{EIEIO} \textit{}.
-%\item \errcode{EGRATUITOUS} \textit{}.
-\item \errcode{EBADMSG} \textit{Not a data message}.
-\item \errcode{EIDRM} \textit{Identifier removed}. Indica che l'oggetto del
- \textit{SysV IPC} cui si fa riferimento è stato cancellato.
-\item \errcode{EMULTIHOP} \textit{Multihop attempted}.
-\item \errcode{ENODATA} \textit{No data available}.
-\item \errcode{ENOLINK} \textit{Link has been severed}.
-\item \errcode{ENOMSG} \textit{No message of desired type}. Indica che una
- coda di messaggi del \textit{SysV IPC} non è presente nessun messaggio del
+\end{basedescript}
+
+
+\begin{basedescript}{\desclabelwidth{2.cm}\desclabelstyle{\nextlinelabel}}
+% definiti nel manuale delle glibc ma inesistenti in linux/errno.h
+%\item[\errcode{EBADRPC} \textit{}.]
+%\item[\errcode{ERPCMISMATCH} \textit{}.]
+%\item[\errcode{EPROGUNAVAIL} \textit{}.]
+%\item[\errcode{EPROGMISMATCH} \textit{}.]
+%\item[\errcode{EPROCUNAVAIL} \textit{}.]
+%\item[\errcode{EAUTH} \textit{}.]
+%\item[\errcode{ENEEDAUTH} \textit{}.]
+%\item[\errcode{EBACKGROUND} \textit{}.]
+%\item[\errcode{EDIED} \textit{}.]
+% questi sembrano scherzi, sempre dal manuale delle glibc...
+%\item[\errcode{ED} \textit{}.]
+%\item[\errcode{EGREGIOUS} \textit{}.]
+%\item[\errcode{EIEIO} \textit{}.]
+%\item[\errcode{EGRATUITOUS} \textit{} roba di Hurd, pare.
+
+
+\item[\errcode{EBADMSG} \textit{Not a data message}.] Definito da POSIX come
+errore che arriva ad una funzione di lettura che opera su uno stream. Non
+essendo gli stream definiti su Linux il kernel non genera mai questo tipo di
+messaggio.
+
+\item[\errcode{EMULTIHOP} \textit{Multihop attempted}.] Definito da POSIX come
+ errore dovuto all'accesso a file remoti attraverso più macchine, quando ciò
+ non è consentito. Non viene mai generato su Linux.
+
+\item[\errcode{EIDRM} \textit{Identifier removed}.] Indica che l'oggetto del
+ \textit{SysV IPC} a cui si fa riferimento è stato cancellato.
+
+\item[\errcode{ENODATA} \textit{No data available}.] Viene indicato da POSIX
+ come restituito da una \func{read} eseguita su un file descriptor in
+ modalità non bloccante quando non ci sono dati. In realtà in questo caso su
+ Linux viene utilizzato \errcode{EAGAIN}. Lo stesso valore valore però viene
+ usato come sinonimo di \errcode{ENOATTR}.
+
+\item[\errcode{ENOATTR} \textit{No such attribute}.] È un codice di errore
+ specifico di Linux utilizzato dalle funzioni per la gestione degli attributi
+ estesi dei file (vedi sez.~\ref{sec:file_xattr}) quando il nome
+ dell'attributo richiesto non viene trovato.
+
+\item[\errcode{ENOLINK} \textit{Link has been severed}.] È un errore il cui
+ valore è indicato come \textsl{riservato} nelle \textit{Single Unix
+ Specification}. Dovrebbe indicare l'impossibilità di accedere ad un file a
+ causa di un errore sul collegamento di rete, ma non ci sono indicazioni
+ precise del suo utilizzo. Per quanto riguarda Linux viene riportato nei
+ sorgenti del kernel in alcune operazioni relative ad operazioni di rete.
+
+\item[\errcode{ENOMSG} \textit{No message of desired type}.] Indica che in una
+ coda di messaggi del \textit{SysV IPC} non è presente nessun messaggio del