On Tue, 2020-03-03 at 16:49 +0000, Christos Zoulas wrote: > In article <b2fecb23889f943f47da9c12a4fe1f74aa998a64.camel%gentoo.org@localhost>, > Micha� Górny <mgorny%gentoo.org@localhost> wrote: > > -=-=-=-=-=- > > > > On Tue, 2020-03-03 at 13:51 +0100, Joerg Sonnenberger wrote: > > > On Tue, Mar 03, 2020 at 10:02:27AM +0100, Michał Górny wrote: > > > > Add the two missing errno.h constants: EOWNERDEAD and ENOTRECOVERABLE. > > > > While technically they're used for robust mutexes which we do not > > > > support at the moment, they are listed in POSIX and used by libc++. > > > > While libc++ can be made to build without it, it just locally redefines > > > > the values then, so we may as well define them globally. > > > > > > This patch is certainly incompletely, ranging from missing handling in > > > NFS, dtrace to the libc message catalog... > > > > > > > Ok, I've added it to the manpage, libstdc++, rump. However, could you > > elaborate on NFS and dtrace? > > > > By dtrace, do you mean external/cddl/osnet/lib/libdtrace/errno.d ? If > > so, could you help me understand what I'm supposed to do with that file? > > It seems that these constants diverge from errno.h so I'm not sure if > > I'm supposed to use the next free numbers or... > > Fix it :-) The constants are the FreeBSD ones (EDOOFUS). Ok, I'll make an .awk script to autogenerate it. > > As for NFS, I haven't been able to grep anything relevant. > > You need to add them to the array, and see if the new errors are appropriate > for any other RPC-specific returns (I am guessing not). Thank you, I'll update it. I wonder if we can catch missing entries automatically there. > > /* > * Maps errno values to nfs error numbers. > * Use NFSERR_IO as the catch all for ones not specifically defined in > * RFC 1094. > */ > static const u_char nfsrv_v2errmap[ELAST] = { > NFSERR_PERM, NFSERR_NOENT, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_NXIO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, NFSERR_ACCES, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_EXIST, NFSERR_IO, NFSERR_NODEV, NFSERR_NOTDIR, > NFSERR_ISDIR, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_FBIG, NFSERR_NOSPC, NFSERR_IO, NFSERR_ROFS, > NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, NFSERR_NAMETOL, NFSERR_IO, NFSERR_IO, > NFSERR_NOTEMPTY, NFSERR_IO, NFSERR_IO, NFSERR_DQUOT, NFSERR_STALE, > NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, NFSERR_IO, > NFSERR_IO, NFSERR_IO, > }; > > christos > -- Best regards, Michał Górny
Attachment:
signature.asc
Description: This is a digitally signed message part