Add defines for Linux errno values and use them to make linux_errtbl[]
more readable. While here, add linux_check_errtbl() function to make sure we don't leave holes. No objections: emaste (earlier version) MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D26972
This commit is contained in:
parent
80d8e42662
commit
1a8577fa68
@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sysdecode.h>
|
||||
|
||||
#if defined(__aarch64__) || defined(__amd64__) || defined(__i386__)
|
||||
#include <compat/linux/linux_errno.h>
|
||||
static
|
||||
#include <compat/linux/linux_errno.inc>
|
||||
#endif
|
||||
|
@ -197,5 +197,6 @@ int linux_to_bsd_bits_(int value, struct bsd_to_linux_bitmap *bitmap,
|
||||
#define BITMAP_1t1_LINUX(_name) BITMAP_EASY_LINUX(_name, LINUX_##_name)
|
||||
|
||||
int bsd_to_linux_errno(int error);
|
||||
void linux_check_errtbl(void);
|
||||
|
||||
#endif /* _LINUX_MI_H_ */
|
||||
|
@ -67,6 +67,9 @@ linux_common_modevent(module_t mod, int type, void *data)
|
||||
|
||||
switch(type) {
|
||||
case MOD_LOAD:
|
||||
#ifdef INVARIANTS
|
||||
linux_check_errtbl();
|
||||
#endif
|
||||
linux_dev_shm_create();
|
||||
linux_osd_jail_register();
|
||||
linux_exit_tag = EVENTHANDLER_REGISTER(process_exit,
|
||||
|
@ -8,6 +8,7 @@ __FBSDID("$FreeBSD$");
|
||||
#include <sys/systm.h>
|
||||
|
||||
#include <compat/linux/linux.h>
|
||||
#include <compat/linux/linux_errno.h>
|
||||
#include <compat/linux/linux_errno.inc>
|
||||
|
||||
int
|
||||
@ -19,3 +20,16 @@ bsd_to_linux_errno(int error)
|
||||
|
||||
return (linux_errtbl[error]);
|
||||
}
|
||||
|
||||
#ifdef INVARIANTS
|
||||
void
|
||||
linux_check_errtbl(void)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 1; i < sizeof(linux_errtbl); i++) {
|
||||
KASSERT(linux_errtbl[i] != 0,
|
||||
("%s: linux_errtbl[%d] == 0", __func__, i));
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
183
sys/compat/linux/linux_errno.h
Normal file
183
sys/compat/linux/linux_errno.h
Normal file
@ -0,0 +1,183 @@
|
||||
/*-
|
||||
* SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||
*
|
||||
* Copyright (c) 2020 The FreeBSD Foundation
|
||||
*
|
||||
* This software was developed by Edward Tomasz Napierala under sponsorship
|
||||
* from the FreeBSD Foundation.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $FreeBSD$
|
||||
*/
|
||||
|
||||
#ifndef _LINUX_ERRNO_H_
|
||||
#define _LINUX_ERRNO_H_
|
||||
|
||||
#define LINUX_EPERM 1
|
||||
#define LINUX_ENOENT 2
|
||||
#define LINUX_ESRCH 3
|
||||
#define LINUX_EINTR 4
|
||||
#define LINUX_EIO 5
|
||||
#define LINUX_ENXIO 6
|
||||
#define LINUX_E2BIG 7
|
||||
#define LINUX_ENOEXEC 8
|
||||
#define LINUX_EBADF 9
|
||||
|
||||
#define LINUX_ECHILD 10
|
||||
#define LINUX_EAGAIN 11
|
||||
#define LINUX_ENOMEM 12
|
||||
#define LINUX_EACCES 13
|
||||
#define LINUX_EFAULT 14
|
||||
#define LINUX_ENOTBLK 15
|
||||
#define LINUX_EBUSY 16
|
||||
#define LINUX_EEXIST 17
|
||||
#define LINUX_EXDEV 18
|
||||
#define LINUX_ENODEV 19
|
||||
|
||||
#define LINUX_ENOTDIR 20
|
||||
#define LINUX_EISDIR 21
|
||||
#define LINUX_EINVAL 22
|
||||
#define LINUX_ENFILE 23
|
||||
#define LINUX_EMFILE 24
|
||||
#define LINUX_ENOTTY 25
|
||||
#define LINUX_ETXTBSY 26
|
||||
#define LINUX_EFBIG 27
|
||||
#define LINUX_ENOSPC 28
|
||||
#define LINUX_ESPIPE 29
|
||||
|
||||
#define LINUX_EROFS 30
|
||||
#define LINUX_EMLINK 31
|
||||
#define LINUX_EPIPE 32
|
||||
#define LINUX_EDOM 33
|
||||
#define LINUX_ERANGE 34
|
||||
#define LINUX_EDEADLK 35
|
||||
#define LINUX_ENAMETOOLONG 36
|
||||
#define LINUX_ENOLCK 37
|
||||
#define LINUX_ENOSYS 38
|
||||
#define LINUX_ENOTEMPTY 39
|
||||
|
||||
#define LINUX_ELOOP 40
|
||||
/* XXX: errno 41 is not defined in Linux. */
|
||||
#define LINUX_ENOMSG 42
|
||||
#define LINUX_EIDRM 43
|
||||
#define LINUX_ECHRNG 44
|
||||
#define LINUX_EL2NSYNC 45
|
||||
#define LINUX_EL3HLT 46
|
||||
#define LINUX_EL3RST 47
|
||||
#define LINUX_ELNRNG 48
|
||||
#define LINUX_EUNATCH 49
|
||||
|
||||
#define LINUX_ENOCSI 50
|
||||
#define LINUX_L2HLT 51
|
||||
#define LINUX_EBADE 52
|
||||
#define LINUX_EBADR 53
|
||||
#define LINUX_EXFULL 54
|
||||
#define LINUX_ENOANO 55
|
||||
#define LINUX_EBADRQC 56
|
||||
#define LINUX_EBADSLT 57
|
||||
/* XXX: errno 58 is not defined in Linux. */
|
||||
#define LINUX_EBFONT 59
|
||||
|
||||
#define LINUX_ENOSTR 60
|
||||
#define LINUX_ENODATA 61
|
||||
#define LINUX_ENOTIME 62
|
||||
#define LINUX_ENOSR 63
|
||||
#define LINUX_ENONET 64
|
||||
#define LINUX_ENOPKG 65
|
||||
#define LINUX_EREMOTE 66
|
||||
#define LINUX_ENOLINK 67
|
||||
#define LINUX_EADV 68
|
||||
#define LINUX_ESRMNT 69
|
||||
|
||||
#define LINUX_ECOMM 70
|
||||
#define LINUX_EPROTO 71
|
||||
#define LINUX_EMULTIHOP 72
|
||||
#define LINUX_EDOTDOT 73
|
||||
#define LINUX_EBADMSG 74
|
||||
#define LINUX_EOVERFLOW 75
|
||||
#define LINUX_ENOTUNIQ 76
|
||||
#define LINUX_EBADFD 77
|
||||
#define LINUX_EREMCHG 78
|
||||
#define LINUX_ELIBACC 79
|
||||
|
||||
#define LINUX_ELIBBAD 80
|
||||
#define LINUX_ELIBSCN 81
|
||||
#define LINUX_ELIBMAX 82
|
||||
#define LINUX_ELIBEXEC 83
|
||||
#define LINUX_EILSEQ 84
|
||||
#define LINUX_ERESTART 85
|
||||
#define LINUX_ESTRPIPE 86
|
||||
#define LINUX_EUSERS 87
|
||||
#define LINUX_ENOTSOCK 88
|
||||
#define LINUX_EDESTADDRREQ 89
|
||||
|
||||
#define LINUX_EMSGSIZE 90
|
||||
#define LINUX_EPROTOTYPE 91
|
||||
#define LINUX_ENOPROTOOPT 92
|
||||
#define LINUX_EPROTONOTSUPPORT 93
|
||||
#define LINUX_ESOCKNOTSUPPORT 94
|
||||
#define LINUX_EOPNOTSUPPORT 95
|
||||
#define LINUX_EPFNOTSUPPORT 96
|
||||
#define LINUX_EAFNOTSUPPORT 97
|
||||
#define LINUX_EADDRINUSE 98
|
||||
#define LINUX_EADDRNOTAVAIL 99
|
||||
|
||||
#define LINUX_ENETDOWN 100
|
||||
#define LINUX_ENETUNREACH 101
|
||||
#define LINUX_ENETRESET 102
|
||||
#define LINUX_ECONNABORTED 103
|
||||
#define LINUX_ECONNRESET 104
|
||||
#define LINUX_ENOBUFS 105
|
||||
#define LINUX_EISCONN 106
|
||||
#define LINUX_ENOTCONN 107
|
||||
#define LINUX_ESHUTDOWN 108
|
||||
#define LINUX_ETOOMANYREFS 109
|
||||
|
||||
#define LINUX_ETIMEDOUT 110
|
||||
#define LINUX_ECONNREFUSED 111
|
||||
#define LINUX_EHOSTDOWN 112
|
||||
#define LINUX_EHOSTUNREACH 113
|
||||
#define LINUX_EALREADY 114
|
||||
#define LINUX_EINPROGRESS 115
|
||||
#define LINUX_ESTALE 116
|
||||
#define LINUX_EUCLEAN 117
|
||||
#define LINUX_ENOTNAM 118
|
||||
#define LINUX_ENAVAIL 119
|
||||
|
||||
#define LINUX_EISNAM 120
|
||||
#define LINUX_EREMOTEIO 121
|
||||
#define LINUX_EDQUOT 122
|
||||
#define LINUX_ENOMEDIUM 123
|
||||
#define LINUX_EMEDIUMTYPE 124
|
||||
#define LINUX_ECANCELED 125
|
||||
#define LINUX_ENOKEY 126
|
||||
#define LINUX_EKEYEXPIRED 127
|
||||
#define LINUX_EKEYREVOKED 128
|
||||
#define LINUX_EKEYREJECTED 129
|
||||
|
||||
#define LINUX_EOWNERDEAD 130
|
||||
#define LINUX_ENOTRECOVERABLE 131
|
||||
#define LINUX_ERFKILL 132
|
||||
#define LINUX_EHWPOISON 133
|
||||
|
||||
#endif /* _LINUX_ERRNO_H_ */
|
@ -34,125 +34,128 @@
|
||||
* FreeBSD: src/sys/sys/errno.h
|
||||
* Linux: include/uapi/asm-generic/errno-base.h
|
||||
* include/uapi/asm-generic/errno.h
|
||||
*
|
||||
* XXX: The "XXX" comments below should be replaced with rationale
|
||||
* for the errno value chosen.
|
||||
*/
|
||||
const int linux_errtbl[ELAST + 1] = {
|
||||
/* [0, 9] */
|
||||
[0] = -0,
|
||||
[EPERM] = -1,
|
||||
[ENOENT] = -2,
|
||||
[ESRCH] = -3,
|
||||
[EINTR] = -4,
|
||||
[EIO] = -5,
|
||||
[ENXIO] = -6,
|
||||
[E2BIG] = -7,
|
||||
[ENOEXEC] = -8,
|
||||
[EBADF] = -9,
|
||||
[EPERM] = -LINUX_EPERM,
|
||||
[ENOENT] = -LINUX_ENOENT,
|
||||
[ESRCH] = -LINUX_ESRCH,
|
||||
[EINTR] = -LINUX_EINTR,
|
||||
[EIO] = -LINUX_EIO,
|
||||
[ENXIO] = -LINUX_ENXIO,
|
||||
[E2BIG] = -LINUX_E2BIG,
|
||||
[ENOEXEC] = -LINUX_ENOEXEC,
|
||||
[EBADF] = -LINUX_EBADF,
|
||||
|
||||
/* [10, 19] */
|
||||
[ECHILD] = -10,
|
||||
[EDEADLK] = -35,
|
||||
[ENOMEM] = -12,
|
||||
[EACCES] = -13,
|
||||
[EFAULT] = -14,
|
||||
[ENOTBLK] = -15,
|
||||
[EBUSY] = -16,
|
||||
[EEXIST] = -17,
|
||||
[EXDEV] = -18,
|
||||
[ENODEV] = -19,
|
||||
[ECHILD] = -LINUX_ECHILD,
|
||||
[EDEADLK] = -LINUX_EDEADLK,
|
||||
[ENOMEM] = -LINUX_ENOMEM,
|
||||
[EACCES] = -LINUX_EACCES,
|
||||
[EFAULT] = -LINUX_EFAULT,
|
||||
[ENOTBLK] = -LINUX_ENOTBLK,
|
||||
[EBUSY] = -LINUX_EBUSY,
|
||||
[EEXIST] = -LINUX_EEXIST,
|
||||
[EXDEV] = -LINUX_EXDEV,
|
||||
[ENODEV] = -LINUX_ENODEV,
|
||||
|
||||
/* [20, 29] */
|
||||
[ENOTDIR] = -20,
|
||||
[EISDIR] = -21,
|
||||
[EINVAL] = -22,
|
||||
[ENFILE] = -23,
|
||||
[EMFILE] = -24,
|
||||
[ENOTTY] = -25,
|
||||
[ETXTBSY] = -26,
|
||||
[EFBIG] = -27,
|
||||
[ENOSPC] = -28,
|
||||
[ESPIPE] = -29,
|
||||
[ENOTDIR] = -LINUX_ENOTDIR,
|
||||
[EISDIR] = -LINUX_EISDIR,
|
||||
[EINVAL] = -LINUX_EINVAL,
|
||||
[ENFILE] = -LINUX_ENFILE,
|
||||
[EMFILE] = -LINUX_EMFILE,
|
||||
[ENOTTY] = -LINUX_ENOTTY,
|
||||
[ETXTBSY] = -LINUX_ETXTBSY,
|
||||
[EFBIG] = -LINUX_EFBIG,
|
||||
[ENOSPC] = -LINUX_ENOSPC,
|
||||
[ESPIPE] = -LINUX_ESPIPE,
|
||||
|
||||
/* [30, 39] */
|
||||
[EROFS] = -30,
|
||||
[EMLINK] = -31,
|
||||
[EPIPE] = -32,
|
||||
[EDOM] = -33,
|
||||
[ERANGE] = -34,
|
||||
[EAGAIN] = -11,
|
||||
[EINPROGRESS] = -115,
|
||||
[EALREADY] = -114,
|
||||
[ENOTSOCK] = -88,
|
||||
[EDESTADDRREQ] = -89,
|
||||
[EROFS] = -LINUX_EROFS,
|
||||
[EMLINK] = -LINUX_EMLINK,
|
||||
[EPIPE] = -LINUX_EPIPE,
|
||||
[EDOM] = -LINUX_EDOM,
|
||||
[ERANGE] = -LINUX_ERANGE,
|
||||
[EAGAIN] = -LINUX_EAGAIN,
|
||||
[EINPROGRESS] = -LINUX_EINPROGRESS,
|
||||
[EALREADY] = -LINUX_EALREADY,
|
||||
[ENOTSOCK] = -LINUX_ENOTSOCK,
|
||||
[EDESTADDRREQ] = -LINUX_EDESTADDRREQ,
|
||||
|
||||
/* [40, 49] */
|
||||
[EMSGSIZE] = -90,
|
||||
[EPROTOTYPE] = -91,
|
||||
[ENOPROTOOPT] = -92,
|
||||
[EPROTONOSUPPORT] = -93,
|
||||
[ESOCKTNOSUPPORT] = -94,
|
||||
[EOPNOTSUPP] = -95,
|
||||
[EPFNOSUPPORT] = -96,
|
||||
[EAFNOSUPPORT] = -97,
|
||||
[EADDRINUSE] = -98,
|
||||
[EADDRNOTAVAIL] = -99,
|
||||
[EMSGSIZE] = -LINUX_EMSGSIZE,
|
||||
[EPROTOTYPE] = -LINUX_EPROTOTYPE,
|
||||
[ENOPROTOOPT] = -LINUX_ENOPROTOOPT,
|
||||
[EPROTONOSUPPORT] = -LINUX_EPROTONOTSUPPORT,
|
||||
[ESOCKTNOSUPPORT] = -LINUX_ESOCKNOTSUPPORT,
|
||||
[EOPNOTSUPP] = -LINUX_EOPNOTSUPPORT,
|
||||
[EPFNOSUPPORT] = -LINUX_EPFNOTSUPPORT,
|
||||
[EAFNOSUPPORT] = -LINUX_EAFNOTSUPPORT,
|
||||
[EADDRINUSE] = -LINUX_EADDRINUSE,
|
||||
[EADDRNOTAVAIL] = -LINUX_EADDRNOTAVAIL,
|
||||
|
||||
/* [50, 59] */
|
||||
[ENETDOWN] = -100,
|
||||
[ENETUNREACH] = -101,
|
||||
[ENETRESET] = -102,
|
||||
[ECONNABORTED] = -103,
|
||||
[ECONNRESET] = -104,
|
||||
[ENOBUFS] = -105,
|
||||
[EISCONN] = -106,
|
||||
[ENOTCONN] = -107,
|
||||
[ESHUTDOWN] = -108,
|
||||
[ETOOMANYREFS] = -109,
|
||||
[ENETDOWN] = -LINUX_ENETDOWN,
|
||||
[ENETUNREACH] = -LINUX_ENETUNREACH,
|
||||
[ENETRESET] = -LINUX_ENETRESET,
|
||||
[ECONNABORTED] = -LINUX_ECONNABORTED,
|
||||
[ECONNRESET] = -LINUX_ECONNRESET,
|
||||
[ENOBUFS] = -LINUX_ENOBUFS,
|
||||
[EISCONN] = -LINUX_EISCONN,
|
||||
[ENOTCONN] = -LINUX_ENOTCONN,
|
||||
[ESHUTDOWN] = -LINUX_ESHUTDOWN,
|
||||
[ETOOMANYREFS] = -LINUX_ETOOMANYREFS,
|
||||
|
||||
/* [60, 69] */
|
||||
[ETIMEDOUT] = -110,
|
||||
[ECONNREFUSED] = -111,
|
||||
[ELOOP] = -40,
|
||||
[ENAMETOOLONG] = -36,
|
||||
[EHOSTDOWN] = -112,
|
||||
[EHOSTUNREACH] = -113,
|
||||
[ENOTEMPTY] = -39,
|
||||
[EPROCLIM] = -11,
|
||||
[EUSERS] = -87,
|
||||
[EDQUOT] = -122,
|
||||
[ETIMEDOUT] = -LINUX_ETIMEDOUT,
|
||||
[ECONNREFUSED] = -LINUX_ECONNREFUSED,
|
||||
[ELOOP] = -LINUX_ELOOP,
|
||||
[ENAMETOOLONG] = -LINUX_ENAMETOOLONG,
|
||||
[EHOSTDOWN] = -LINUX_EHOSTDOWN,
|
||||
[EHOSTUNREACH] = -LINUX_EHOSTUNREACH,
|
||||
[ENOTEMPTY] = -LINUX_ENOTEMPTY,
|
||||
[EPROCLIM] = -LINUX_EAGAIN, /* XXX */
|
||||
[EUSERS] = -LINUX_EUSERS,
|
||||
[EDQUOT] = -LINUX_EDQUOT,
|
||||
|
||||
/* [70, 79] */
|
||||
[ESTALE] = -116,
|
||||
[EREMOTE] = -66,
|
||||
[EBADRPC] = -6, /* EBADRPC -> ENXIO */
|
||||
[ERPCMISMATCH] = -6, /* ERPCMISMATCH -> ENXIO */
|
||||
[EPROGUNAVAIL] = -6, /* EPROGUNAVAIL -> ENXIO */
|
||||
[EPROGMISMATCH] = -6, /* EPROGMISMATCH -> ENXIO */
|
||||
[EPROCUNAVAIL] = -6, /* EPROCUNAVAIL -> ENXIO */
|
||||
[ENOLCK] = -37,
|
||||
[ENOSYS] = -38,
|
||||
[EFTYPE] = -9,
|
||||
[ESTALE] = -LINUX_ESTALE,
|
||||
[EREMOTE] = -LINUX_EREMOTE,
|
||||
[EBADRPC] = -LINUX_ENXIO, /* XXX */
|
||||
[ERPCMISMATCH] = -LINUX_ENXIO, /* XXX */
|
||||
[EPROGUNAVAIL] = -LINUX_ENXIO, /* XXX */
|
||||
[EPROGMISMATCH] = -LINUX_ENXIO, /* XXX */
|
||||
[EPROCUNAVAIL] = -LINUX_ENXIO, /* XXX */
|
||||
[ENOLCK] = -LINUX_ENOLCK,
|
||||
[ENOSYS] = -LINUX_ENOSYS,
|
||||
[EFTYPE] = -LINUX_EBADF, /* XXX */
|
||||
|
||||
/* [80, 89] */
|
||||
[EAUTH] = -6, /* EAUTH -> ENXIO */
|
||||
[ENEEDAUTH] = -6, /* ENEEDAUTH -> ENXIO */
|
||||
[EIDRM] = -43,
|
||||
[ENOMSG] = -42,
|
||||
[EOVERFLOW] = -75,
|
||||
[ECANCELED] = -125,
|
||||
[EILSEQ] = -84,
|
||||
[ENOATTR] = -61,
|
||||
[EDOOFUS] = -22, /* EDOOFUS -> EINVAL */
|
||||
[EBADMSG] = -74,
|
||||
[EAUTH] = -LINUX_ENXIO, /* XXX */
|
||||
[ENEEDAUTH] = -LINUX_ENXIO, /* XXX */
|
||||
[EIDRM] = -LINUX_EIDRM,
|
||||
[ENOMSG] = -LINUX_ENOMSG,
|
||||
[EOVERFLOW] = -LINUX_EOVERFLOW,
|
||||
[ECANCELED] = -LINUX_ECANCELED,
|
||||
[EILSEQ] = -LINUX_EILSEQ,
|
||||
[ENOATTR] = -LINUX_ENODATA, /* XXX */
|
||||
[EDOOFUS] = -LINUX_EINVAL, /* XXX */
|
||||
[EBADMSG] = -LINUX_EBADMSG,
|
||||
|
||||
/* [90, 99] */
|
||||
[EMULTIHOP] = -72,
|
||||
[ENOLINK] = -67,
|
||||
[EPROTO] = -71,
|
||||
[ENOTCAPABLE] = -1, /* ENOTCAPABLE -> EPERM */
|
||||
[ECAPMODE] = -1, /* ECAPMODE -> EPERM */
|
||||
[ENOTRECOVERABLE] = -131, /* ENOTRECOVERABLE */
|
||||
[EOWNERDEAD] = -130, /* EOWNERDEAD */
|
||||
[EINTEGRITY] = -22, /* EINTEGRITY -> EINVAL */
|
||||
[EMULTIHOP] = -LINUX_EMULTIHOP,
|
||||
[ENOLINK] = -LINUX_ENOLINK,
|
||||
[EPROTO] = -LINUX_EPROTO,
|
||||
[ENOTCAPABLE] = -LINUX_EPERM, /* XXX */
|
||||
[ECAPMODE] = -LINUX_EPERM, /* XXX */
|
||||
[ENOTRECOVERABLE] = -LINUX_ENOTRECOVERABLE,
|
||||
[EOWNERDEAD] = -LINUX_EOWNERDEAD,
|
||||
[EINTEGRITY] = -LINUX_EINVAL, /* XXX */
|
||||
};
|
||||
|
||||
_Static_assert(ELAST == 97,
|
||||
|
Loading…
Reference in New Issue
Block a user