1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _ASM_GENERIC_ERRNO_H
3 #define _ASM_GENERIC_ERRNO_H
4 
5 #include <asm-generic/errno-base.h>
6 
7 #define	EDEADLK		35	/* Resource deadlock would occur */
8 #define	ENAMETOOLONG	36	/* File name too long */
9 #define	ENOLCK		37	/* No record locks available */
10 
11 /*
12  * This error code is special: arch syscall entry code will return
13  * -ENOSYS if users try to call a syscall that doesn't exist.  To keep
14  * failures of syscalls that really do exist distinguishable from
15  * failures due to attempts to use a nonexistent syscall, syscall
16  * implementations should refrain from returning -ENOSYS.
17  */
18 #define	ENOSYS		38	/* Invalid system call number */
19 
20 #define	ENOTEMPTY	39	/* Directory not empty */
21 #define	ELOOP		40	/* Too many symbolic links encountered */
22 #define	EWOULDBLOCK	EAGAIN	/* Operation would block */
23 #define	ENOMSG		42	/* No message of desired type */
24 #define	EIDRM		43	/* Identifier removed */
25 #define	ECHRNG		44	/* Channel number out of range */
26 #define	EL2NSYNC	45	/* Level 2 not synchronized */
27 #define	EL3HLT		46	/* Level 3 halted */
28 #define	EL3RST		47	/* Level 3 reset */
29 #define	ELNRNG		48	/* Link number out of range */
30 #define	EUNATCH		49	/* Protocol driver not attached */
31 #define	ENOCSI		50	/* No CSI structure available */
32 #define	EL2HLT		51	/* Level 2 halted */
33 #define	EBADE		52	/* Invalid exchange */
34 #define	EBADR		53	/* Invalid request descriptor */
35 #define	EXFULL		54	/* Exchange full */
36 #define	ENOANO		55	/* No anode */
37 #define	EBADRQC		56	/* Invalid request code */
38 #define	EBADSLT		57	/* Invalid slot */
39 
40 #define	EDEADLOCK	EDEADLK
41 
42 #define	EBFONT		59	/* Bad font file format */
43 #define	ENOSTR		60	/* Device not a stream */
44 #define	ENODATA		61	/* No data available */
45 #define	ETIME		62	/* Timer expired */
46 #define	ENOSR		63	/* Out of streams resources */
47 #define	ENONET		64	/* Machine is not on the network */
48 #define	ENOPKG		65	/* Package not installed */
49 #define	EREMOTE		66	/* Object is remote */
50 #define	ENOLINK		67	/* Link has been severed */
51 #define	EADV		68	/* Advertise error */
52 #define	ESRMNT		69	/* Srmount error */
53 #define	ECOMM		70	/* Communication error on send */
54 #define	EPROTO		71	/* Protocol error */
55 #define	EMULTIHOP	72	/* Multihop attempted */
56 #define	EDOTDOT		73	/* RFS specific error */
57 #define	EBADMSG		74	/* Not a data message */
58 #define	EOVERFLOW	75	/* Value too large for defined data type */
59 #define	ENOTUNIQ	76	/* Name not unique on network */
60 #define	EBADFD		77	/* File descriptor in bad state */
61 #define	EREMCHG		78	/* Remote address changed */
62 #define	ELIBACC		79	/* Can not access a needed shared library */
63 #define	ELIBBAD		80	/* Accessing a corrupted shared library */
64 #define	ELIBSCN		81	/* .lib section in a.out corrupted */
65 #define	ELIBMAX		82	/* Attempting to link in too many shared libraries */
66 #define	ELIBEXEC	83	/* Cannot exec a shared library directly */
67 #define	EILSEQ		84	/* Illegal byte sequence */
68 #define	ERESTART	85	/* Interrupted system call should be restarted */
69 #define	ESTRPIPE	86	/* Streams pipe error */
70 #define	EUSERS		87	/* Too many users */
71 #define	ENOTSOCK	88	/* Socket operation on non-socket */
72 #define	EDESTADDRREQ	89	/* Destination address required */
73 #define	EMSGSIZE	90	/* Message too long */
74 #define	EPROTOTYPE	91	/* Protocol wrong type for socket */
75 #define	ENOPROTOOPT	92	/* Protocol not available */
76 #define	EPROTONOSUPPORT	93	/* Protocol not supported */
77 #define	ESOCKTNOSUPPORT	94	/* Socket type not supported */
78 #define	EOPNOTSUPP	95	/* Operation not supported on transport endpoint */
79 #define	EPFNOSUPPORT	96	/* Protocol family not supported */
80 #define	EAFNOSUPPORT	97	/* Address family not supported by protocol */
81 #define	EADDRINUSE	98	/* Address already in use */
82 #define	EADDRNOTAVAIL	99	/* Cannot assign requested address */
83 #define	ENETDOWN	100	/* Network is down */
84 #define	ENETUNREACH	101	/* Network is unreachable */
85 #define	ENETRESET	102	/* Network dropped connection because of reset */
86 #define	ECONNABORTED	103	/* Software caused connection abort */
87 #define	ECONNRESET	104	/* Connection reset by peer */
88 #define	ENOBUFS		105	/* No buffer space available */
89 #define	EISCONN		106	/* Transport endpoint is already connected */
90 #define	ENOTCONN	107	/* Transport endpoint is not connected */
91 #define	ESHUTDOWN	108	/* Cannot send after transport endpoint shutdown */
92 #define	ETOOMANYREFS	109	/* Too many references: cannot splice */
93 #define	ETIMEDOUT	110	/* Connection timed out */
94 #define	ECONNREFUSED	111	/* Connection refused */
95 #define	EHOSTDOWN	112	/* Host is down */
96 #define	EHOSTUNREACH	113	/* No route to host */
97 #define	EALREADY	114	/* Operation already in progress */
98 #define	EINPROGRESS	115	/* Operation now in progress */
99 #define	ESTALE		116	/* Stale file handle */
100 #define	EUCLEAN		117	/* Structure needs cleaning */
101 #define	ENOTNAM		118	/* Not a XENIX named type file */
102 #define	ENAVAIL		119	/* No XENIX semaphores available */
103 #define	EISNAM		120	/* Is a named type file */
104 #define	EREMOTEIO	121	/* Remote I/O error */
105 #define	EDQUOT		122	/* Quota exceeded */
106 
107 #define	ENOMEDIUM	123	/* No medium found */
108 #define	EMEDIUMTYPE	124	/* Wrong medium type */
109 #define	ECANCELED	125	/* Operation Canceled */
110 #define	ENOKEY		126	/* Required key not available */
111 #define	EKEYEXPIRED	127	/* Key has expired */
112 #define	EKEYREVOKED	128	/* Key has been revoked */
113 #define	EKEYREJECTED	129	/* Key was rejected by service */
114 
115 /* for robust mutexes */
116 #define	EOWNERDEAD	130	/* Owner died */
117 #define	ENOTRECOVERABLE	131	/* State not recoverable */
118 
119 #define ERFKILL		132	/* Operation not possible due to RF-kill */
120 
121 #define EHWPOISON	133	/* Memory page has hardware error */
122 
123 #endif
124