1
2/*
3 * Copyright (c) 2009, 2010, 2011, 2012, ETH Zurich.
4 * Copyright (c) 2014, HP Labs.
5 * All rights reserved.
6 *
7 * This file is distributed under the terms in the attached LICENSE file.
8 * If you do not find this file, copies can be found by writing to:
9 * ETH Zurich D-INFK, CAB F.78, Universitaetstrasse 6, CH-8092 Zurich,
10 * Attn: Systems Group.
11 */
12
13// Kernel/syscall errors
14errors kernel SYS_ERR_ {
15    default success OK          "Success",
16
17    failure NOT_IMPLEMENTED     "Kernel functionality NYI",
18
19    // generic errors during system call handling
20    failure ILLEGAL_SYSCALL     "Illegal system call number",
21    failure INVARGS_SYSCALL     "Invalid system call arguments",
22    failure CALLER_ENABLED      "Invalid system call while enabled",
23    failure CALLER_DISABLED     "Invalid system call while disabled",
24    failure ILLEGAL_INVOCATION  "Illegal capability invocation",
25    failure INVALID_USER_BUFFER "Invalid user space buffer",
26
27    // LMP errors
28    failure LMP_NO_TARGET       "There is no target dispatcher for this endpoint",
29    failure LMP_TARGET_DISABLED "Target of LMP is disabled",
30    failure LMP_BUF_OVERFLOW    "The endpoint buffer is full",
31    failure LMP_EP_STATE_INVALID "Target has corrupt/invalid state in its endpoint structure",
32    failure LMP_CAPTRANSFER_SRC_LOOKUP          "Error looking up source for cap transfer",
33    failure LMP_CAPTRANSFER_DST_CNODE_LOOKUP    "Error looking up destination CNode for cap transfer",
34    failure LMP_CAPTRANSFER_DST_CNODE_INVALID   "Destination CNode cap not of type CNode for cap transfer",
35    failure LMP_CAPTRANSFER_DST_SLOT_OCCUPIED   "Destination slot is occupied for cap transfer",
36    failure LRPC_SLOT_INVALID   "Invalid slot specified for LRPC",
37    failure LRPC_NOT_L1         "L1 CNode lookup failed for LRPC",
38    failure LRPC_NOT_L2         "L2 CNode lookup failed for LRPC",
39    failure LRPC_NOT_ENDPOINT   "Slot specified for LRPC does not contain an endpoint cap",
40    failure INVALID_EPLEN       "Endpoint buffer has invalid length",
41
42    // XXX: this should go away -AB
43    failure IDC_MSG_BOUNDS      "Attempted to retrieve a word beyond the size of an LMP message structure",
44
45    // Generic CSpace lookup errors
46    failure CNODE_NOT_FOUND     "Encountered null capability when resolving slot",
47    failure CNODE_TYPE          "Encountered non-CNode capability when resolving slot",
48    failure CNODE_RIGHTS        "Insufficient rights on CNode",
49    failure DEPTH_EXCEEDED      "Exceeded depth limit of CSpace",
50    failure GUARD_MISMATCH      "Guard does not match",
51    failure CAP_NOT_FOUND       "Capability not found (empty slot encountered)",
52    failure IDENTIFY_LOOKUP     "Error while looking up cap to identify",
53    failure L1_CNODE_INDEX      "Index into L1 CNode too high",
54    failure CAP_LOOKUP_DEPTH    "Invalid capability lookup depth",
55    failure RESIZE_NOT_L1       "Trying to resize non-L1 CNode",
56
57    // Generic capability manipulation errors
58    failure SLOT_IN_USE         "Destination capability slots occupied",
59    failure SLOT_LOOKUP_FAIL    "Failure during slot lookup",
60    failure CNODE_NOT_ROOT      "Found non-root CNode during root CNode lookup",
61    failure GUARD_SIZE_OVERFLOW "Specified guard size exceeds CSpace depth",
62    failure INVALID_SOURCE_TYPE "Invalid source capability type",
63    failure ILLEGAL_DEST_TYPE   "Illegal destination capability type",
64    failure SOURCE_CAP_LOOKUP   "Error looking up source capability",
65    failure SOURCE_ROOTCN_LOOKUP "Error looking up source root CNode",
66    failure DEST_CNODE_LOOKUP   "Error looking up destination CNode",
67    failure DEST_ROOTCN_LOOKUP  "Error looking up destination root CNode",
68    failure DEST_CNODE_INVALID  "Destination CNode cap is not of type CNode",
69    failure ROOT_CAP_LOOKUP     "Error looking up root capability",
70    failure DEST_TYPE_INVALID   "Destination capability is of invalid type",
71    failure INVALID_RETYPE      "Invalid source/destination type pair for retyping",
72    failure RETYPE_MAPPING_EXPLICIT "Invalid explicit retype to mapping type",
73    failure RETYPE_INVALID_COUNT "Invalid number of new objects requested",
74    failure REVOKE_FIRST        "Capability already has descendants or siblings",
75    failure INVALID_SIZE_BITS   "Invalid size for new objects",
76    failure INVALID_SIZE        "Invalid size for new objects",
77    failure SLOTS_INVALID       "Destination capability slots exceed capacity of CNode",
78    failure SLOTS_IN_USE        "One or more destination capability slots occupied",
79    failure RETYPE_CREATE       "Error while creating new capabilities in retype",
80    failure RETYPE_INVALID_OFFSET "Offset into source capability invalid for retype",
81    failure RETYPE_INVALID_OBJSIZE "Objsize invalid for retype",
82    failure NO_LOCAL_COPIES     "No copies of specified capability in local MDB",
83    failure RETRY_THROUGH_MONITOR "There is a remote copy of the capability, monitor must be involved to perform a cross core agreement protocol",
84    failure TYPE_NOT_CREATABLE  "Specified capability type is not creatable at runtime. Consider retyping it from another capability.",
85    failure DEST_CAP_RIGHTS     "The destinatin cap rights are not sufficient",
86
87    // errors on the monitor-kernel interface
88    failure DELETE_LAST_OWNED   "Tried to delete the last copy of a locally owned capability that may have remote copies",
89    failure DELETE_REMOTE_LOCAL "Tried to delete foreign copies from local copy",
90    failure CAP_LOCKED          "The cap has already been locked",
91    success RAM_CAP_CREATED     "A new RAM cap has been created",
92
93    // errors specific to page mapping
94    failure VNODE_SLOT_INVALID      "Destination slot exceeds size of page table",
95    failure WRONG_MAPPING           "Wrong source/destination mapping type",
96    failure FRAME_OFFSET_INVALID    "Specified offset exceeds size of frame",
97    failure VNODE_SLOT_RESERVED     "Destination slot is reserved",
98    failure VNODE_SLOT_INUSE        "Destination slot in use: unmap first",
99    failure VNODE_TYPE              "Encountered non-VNode capability when manipulating page tables",
100    failure VNODE_LOOKUP_NEXT       "Could not find next level page table",
101    failure VNODE_NOT_INSTALLED     "VNode not in rooted page table tree",
102    failure VM_ALREADY_MAPPED       "This cap copy is already mapped",
103    failure VM_MAP_SIZE             "Mapping size too large",
104    failure VM_MAP_OFFSET           "Mapping offset too large",
105    failure VM_MAP_RIGHTS           "Requested mapping rights too high",
106    failure VM_RETRY_SINGLE         "Mapping overlaps multiple leaf page tables, retry",
107    failure VM_FRAME_UNALIGNED      "Frame(+offset) for superpage mapping not aligned",
108    failure VM_FRAME_TOO_SMALL      "Frame too small for superpage mapping",
109
110    // errors related to IRQ table
111    failure IRQ_LOOKUP              "Specified capability was not found while inserting in IRQ table",
112    failure IRQ_NOT_ENDPOINT        "Specified capability is not an endpoint cap",
113    failure IRQ_NO_LISTENER         "No listener on specified endpoint cap", // ??
114    failure IRQ_INVALID             "Invalid interrupt number",
115    failure IRQ_NO_FREE_VECTOR      "Unable to allocate vector",
116    failure IRQ_LOOKUP_DEST         "Specified capability was not found while connecting IRQ",
117    failure IRQ_LOOKUP_EP           "Specified endpoint capability was not found while connecting IRQ",
118    failure IRQ_NOT_IRQ_TYPE        "Specified capability is not an IRQ cap",
119    failure IRQ_WRONG_CONTROLLER    "Specified IRQ capability does not target local controller",
120    failure IRQ_NO_ARG              "No int_model argument passed",
121
122    // IO capability
123    failure IO_PORT_INVALID     "IO port out of range",
124
125    // Dispatcher setup and spawn core invocations
126    failure DISP_CSPACE_ROOT            "Error setting CSpace root on dispatcher",
127    failure DISP_CSPACE_INVALID         "Invalid capability type given for CSpace root on dispatcher",
128    failure DISP_VSPACE_ROOT            "Error setting VSpace root on dispatcher",
129    failure DISP_VSPACE_INVALID         "Invalid capability type given for VSpace root on dispatcher",
130    failure DISP_FRAME                  "Error setting dispatcher frame",
131    failure DISP_FRAME_INVALID          "Invalid capability type given for dispatcher frame",
132    failure DISP_FRAME_SIZE             "Dispatcher frame too small",
133    failure DISP_NOT_RUNNABLE           "Cannot run dispatcher; it is not completely setup",
134    failure DISP_CAP_LOOKUP             "Error looking up dispatcher cap",
135    failure DISP_CAP_INVALID            "Invalid type capability given for dispatcher cap",
136    failure KERNEL_MEM_LOOKUP           "Error looking up capability for kernel memory",
137    failure KERNEL_MEM_INVALID          "Invalid capability type passed for kernel memory",
138    failure CORE_NOT_FOUND              "Unable to boot core: core ID does not exist",
139    failure ARCHITECTURE_NOT_SUPPORTED  "Unable to boot core: specified architecture is not supported by kernel",
140    failure INVALID_YIELD_TARGET        "Target capability for directed yield is invalid",
141    failure DISP_OCAP_LOOKUP            "Error looking up other dispatcher cap",
142    failure DISP_OCAP_TYPE              "Other dispatcher cap is not dispatcher",
143
144    // VMKit specific errors
145    failure VMKIT_UNAVAIL               "Virtualization extensions are unavailable",
146    failure VMKIT_VMCB                  "Error setting VMCB for dispatcher",
147    failure VMKIT_VMCB_INVALID             "Invalid frame capability passed for VMCB",
148    failure VMKIT_CTRL                  "Error setting control area for dispatcher",
149    failure VMKIT_CTRL_INVALID          "Invalid frame capability passed for control structure",
150    failure VMKIT_ENDPOINT              "Error setting monitor endpoint for dispatcher",
151    failure VMKIT_ENDPOINT_INVALID      "Invalid monitor endpoint capability passed",
152    failure VMKIT_VMX_VMFAIL_INVALID	"The VMCS pointer is invalid",
153    failure VMKIT_VMX_VMFAIL_VALID      "VMX instruction failed (VM-instruction error field = ErrorNumber)",
154
155    // Serial port errors
156    failure SERIAL_PORT_INVALID         "Invalid serial port",
157    failure SERIAL_PORT_UNAVAILABLE     "Serial port unavailable",
158
159    // Performance monitoring errors
160    failure PERFMON_NOT_AVAILABLE    "Performance monitoring feature unavailable",
161
162    // Time synchronization errors
163    failure SYNC_MISS            "Missed synchronization phase",
164
165    // ID capability
166    failure ID_SPACE_EXHAUSTED  "ID space exhausted",
167
168    // Domain capability
169    failure DOMAIN_SPACE_EXHAUSTED "Domain space exhausted",
170
171    // I2C driver
172    // XXX: should not be in kernel
173    failure I2C_UNINITIALIZED           "Trying to use uninitialized i2c controller",
174    failure I2C_ZERO_LENGTH_MSG         "Zero byte transfers not allowed",
175    failure I2C_WAIT_FOR_BUS            "Wait for bus free timed out",
176    failure I2C_FAILURE                 "I2C subsystem failure",
177
178    // KCB and related errors
179    failure KCB_NOT_FOUND               "Did not find the given kcb.",
180};
181
182// errors generated by libmdb
183errors libcaps CAPS_ERR_ {
184    // general errors
185    failure INVALID_ARGS        "Invalid arguments",
186
187    // restore errors
188    failure MDB_ALREADY_INITIALIZED "MDB not emtpy during restore",
189    failure MDB_INVALID_STATE       "MDB not in valid state after restore",
190    failure MDB_INVARIANT_VIOLATION "MDB invariant violated",
191
192    // mdb operation errors
193    failure MDB_DUPLICATE_ENTRY "Inserted entry already present",
194    failure MDB_ENTRY_NOTFOUND  "Removed entry not found",
195
196    // search errors
197    failure CAP_NOT_FOUND       "Did not find a matching capability",
198};
199
200// errors generated by libbarrelfish code
201errors libbarrelfish LIB_ERR_ {
202    // generic errors
203    failure WHILE_DELETING      "Error while deleting capability",
204    failure WHILE_FREEING_SLOT  "Error while freeing capability slot",
205    failure MALLOC_FAIL         "Malloc returned NULL",
206    failure SLAB_ALLOC_FAIL     "slab_alloc() returned NULL",
207    failure SLAB_REFILL         "Refilling slab allocator failed",
208    failure NOT_IMPLEMENTED     "functionality not implemented yet",
209    failure SHOULD_NOT_GET_HERE "Should not get here",
210    failure NOT_CNODE           "Function invoked on a capref, that does not represent a CNode",
211
212    // cspace
213    failure CNODE_TYPE          "Type requested for cnode creation is not valid cnode type",
214    failure CNODE_SLOTS         "#slots requested for cnode creation is invalid",
215    failure CROOT_NULL          "Destination root cnode null in cnode_create_foreign_l2",
216
217    // nested errors in specific functions
218    failure FRAME_ALLOC         "Failure in frame_alloc()",
219    failure FRAME_CREATE        "Failure in frame_create()",
220    failure FRAME_CREATE_MS_CONSTRAINTS "frame_create() failed due to constraints to mem_serv in ram_alloc",
221    failure VNODE_CREATE        "Failure in vnode_create()",
222    failure CNODE_CREATE        "Failure in cnode_create()",
223    failure CNODE_CREATE_FROM_MEM "Failure in cnode_create_from_mem()",
224    failure CNODE_CREATE_FOREIGN_L2 "Failure in cnode_create_foreign_l2()",
225    failure RAM_ALLOC           "Failure in ram_alloc()",
226    failure RAM_ALLOC_WRONG_SIZE "Wrong size of memory requested in ram alloc",
227    failure RAM_ALLOC_MS_CONSTRAINTS "Ram alloc failed due to constraints to mem_serv",
228    failure RAM_ALLOC_FIXED_EXHAUSTED "No more RAM available in early allocator",
229    failure CAP_MINT            "Failure in cap_mint()",
230    failure CAP_COPY            "Failure in cap_copy()",
231    failure CAP_RETYPE          "Failure in cap_retype()",
232    failure DEVFRAME_TYPE       "Failure in devframe_type()",
233    failure CAP_DELETE          "Failure in cap_delete()",
234    failure CAP_DESTROY         "Failure in cap_destroy()",
235    failure CAP_INVOKE          "Failure in cap_invoke()",
236    failure CAP_IDENTIFY        "Failure in cap_identify",
237    failure CAP_NOT_MAPPABLE    "Failure in cap_identify: cap not mappable",
238    failure ENDPOINT_CREATE     "Failure in endpoint_create()",
239    failure FRAME_IDENTIFY      "Failure in frame_identify",
240    failure VNODE_MAP           "Failure in vnode_map()",
241    failure VNODE_UNMAP         "Failure in vnode_unmap()",
242    failure IDC_ENDPOINT_ALLOC  "Failure in idc_endpoint_alloc()",
243
244    failure SLOT_ALLOC_INIT     "Failure in slot_alloc_init()",
245    failure SLOT_ALLOC_NO_SPACE    "Slot allocator is out of space",
246    failure SLOT_ALLOC_WRONG_CNODE "The slot to free does not belong in this cnode",
247    failure SINGLE_SLOT_ALLOC_INIT_RAW "Failure in single_slot_alloc_init_raw()",
248    failure SINGLE_SLOT_ALLOC_INIT "Failure in single_slot_alloc_init()",
249    failure MULTI_SLOT_ALLOC_INIT  "Failure in multi_slot_alloc_init()",
250    failure MULTI_SLOT_ALLOC_INIT_RAW  "Failure in multi_slot_alloc_init_raw()",
251    failure SINGLE_SLOT_ALLOC      "Failure in single_slot_alloc()",
252    failure RANGE_ALLOC_NOT_HEAD   "Function called on non-head range allocator",
253    failure SLOT_ALLOC             "Failure in slot_alloc()",
254    failure SLOT_FREE              "Failure in slot_free()",
255    failure SLOT_UNALLOCATED       "slot_free() was called on an unallocated slot",
256    failure ROOTSA_RESIZE          "Failure while resizing root slot allocator",
257
258    // vspace
259    failure VSPACE_CURRENT_INIT "Failure in vspace_current_init()",
260    failure VSPACE_INIT         "Failure in vspace_init()",
261    failure VSPACE_LAYOUT_INIT  "Failure in vspace_layout_init()",
262    failure VSPACE_DESTROY      "Failure in vspace_destroy()",
263    failure VSPACE_REGION_OVERLAP "Overlap with existing region in vspace_add_region()",
264    failure VSPACE_ADD_REGION   "Failure in vspace_add_region()",
265    failure VSPACE_REMOVE_REGION  "Failure in vspace_remove_region()",
266    failure VSPACE_PAGEFAULT_HANDER "Failure in vspace_pagefault_handler()",
267    failure VSPACE_VREGION_NOT_FOUND "The vregion to remove not found in the vspace list",
268    failure VSPACE_PAGEFAULT_ADDR_NOT_FOUND "The faulting address not found in the page fault handler",
269
270    failure VSPACE_PINNED_INIT  "Failure in vspace_pinned_init()",
271    failure VSPACE_PINNED_ALLOC "Failure in vspace_pinned_alloc()",
272    failure VSPACE_PINNED_INVALID_TYPE "Wrong type of slab requested",
273
274    failure VREGION_MAP         "Failure in vregion_map()",
275    failure VREGION_MAP_FIXED   "Failure in vregion_map_fixed()",
276    failure VREGION_NOT_FOUND   "vregion not found in the vspace list",
277    failure VREGION_DESTROY     "Failure in vregion_destroy()",
278    failure VREGION_PAGEFAULT_HANDLER "Failure in vregion_pagefault_handler()",
279    failure VREGION_BAD_ALIGNMENT "Unaligned address passed to vregion_map_fixed",
280
281    failure MEMOBJ_CREATE_ANON  "Failure in memobj_create_anon()",
282    failure MEMOBJ_CREATE_ONE_FRAME "Failure in memobj_create_one_frame()",
283    failure MEMOBJ_CREATE_ONE_FRAME_ONE_MAP "Failure in memobj_create_one_frame_one_map()",
284    failure MEMOBJ_CREATE_PINNED "Failure in memobj_create_pinned()",
285    failure MEMOBJ_CREATE_VFS   "Failure in memobj_create_vfs()",
286    failure MEMOBJ_MAP_REGION   "Failure in memobj_map_region()",
287    failure MEMOBJ_UNMAP_REGION "Failure in memobj_unmap_region()",
288    failure MEMOBJ_PIN_REGION   "Failure in memobj_pin_region()",
289    failure MEMOBJ_UNPIN_REGION "Failure in memobj_unpin_region()",
290    failure MEMOBJ_FILL         "Failure in memobj_fill()",
291    failure MEMOBJ_PAGEFAULT_HANDLER "Failure in memobj_pagefault_handler()",
292    failure MEMOBJ_PAGER_FREE   "Failure in memobj_pager_free()",
293    failure MEMOBJ_WRONG_OFFSET "Wrong offset passed",
294    failure MEMOBJ_FRAME_ALLOC  "Failure the frame alloc function pointer",
295    failure MEMOBJ_VREGION_ALREADY_MAPPED "Pinned memobj only supports one vregion",
296    failure MEMOBJ_UNFILL_TOO_HIGH_OFFSET "The offset given to unfill is too large",
297    failure MEMOBJ_PROTECT      "Failure in memobj protect call",
298    failure MEMOBJ_DUPLICATE_FILL "The offset given to fill is already backed",
299
300    failure PMAP_INIT         "Failure in pmap_init()",
301    failure PMAP_CURRENT_INIT "Failure in pmap_current_init()",
302    failure PMAP_DETERMINE_ADDR "Failure in pmap_determine_addr()",
303    failure PMAP_DO_MAP       "Failure in pmap_do_map()",
304    failure PMAP_MAP          "Failure in pmap_map()",
305    failure PMAP_DO_SINGLE_MAP "Failure in pmap_do_single_map()",
306    failure PMAP_UNMAP        "Failure in pmap_unmap()",
307    failure PMAP_DO_SINGLE_UNMAP "Failure in pmap_do_single_unmap()",
308    failure PMAP_MODIFY_FLAGS "Failure in pmap_modify_flags()",
309    failure PMAP_GET_PTABLE   "Failure in get_mapping()",
310    failure PMAP_ALLOC_VNODE  "Failure in alloc_vnode()",
311    failure PMAP_CLONE_VNODE  "Failure in clone_vnode()",
312    failure PMAP_ADDR_NOT_FREE "The requested address range is not free",
313    failure PMAP_FIND_VNODE   "vnode not found",
314    failure PMAP_EXISTING_MAPPING "Cannot replace existing mapping, unmap first",
315    failure PMAP_FRAME_SIZE "Given Frame to small to fulfil mapping request",
316    failure PMAP_FRAME_IDENTIFY "Frame could not be identified",
317    failure PMAP_NOT_MAPPED "No mapping in given address range",
318    failure PMAP_ALLOC_CNODE "Failure while allocating Mapping CNode",
319
320    failure OUT_OF_VIRTUAL_ADDR  "Out of virtual address",
321
322    failure SERIALISE_BUFOVERFLOW "Buffer overflow while serialising",
323
324    failure VSPACE_MAP        "Failure in vspace_map() wrapper function",
325
326    failure VSPACE_MMU_AWARE_INIT  "Failure in vspace_mmu_aware_init() function",
327    failure VSPACE_MMU_AWARE_MAP   "Failure in vspace_mmu_aware_map() function",
328    failure VSPACE_MMU_AWARE_NO_SPACE "Out of space in vspace_mmu_aware_map() function",
329
330    // Performance counters
331    failure INVOKE_PERFMON_SETUP    "Error in invoke perfmon setup",
332    failure INVOKE_PERFMON_WRITE    "Error in invoke perfmon write",
333
334    // CORESET
335    failure CORESET_NEW             "Failure in coreset_new()",
336    failure CORESET_GET_NEXT_DONE   "No more elements left in coreset_get_next()",
337
338    // IDC (and LMP/UMP channels)
339    failure NO_LMP_MSG          "No LMP message available",
340    failure LMP_RECV_BUF_OVERFLOW "LMP message in endpoint is longer than user-provided buffer",
341    failure NO_UMP_MSG          "No UMP message available",
342    failure UMP_CHAN_FULL       "Cannot send UMP: channel is full",
343    failure LMP_BUFLEN_INVALID  "Cannot create LMP endpoint, invalid buffer length",
344    failure NO_ENDPOINT_SPACE   "Cannot allocate LMP endpoint, out of space in dispatcher frame",
345    failure UMP_BUFSIZE_INVALID "Size of UMP buffer is invalid (must be multiple of message size)",
346    failure UMP_BUFADDR_INVALID "Address of UMP buffer is invalid (must be cache-aligned)",
347    failure UMP_FRAME_OVERFLOW  "Provided frame is too small for requested UMP channel sizes",
348    failure LMP_ENDPOINT_REGISTER "Failure in lmp_endpoint_register()",
349    failure CHAN_REGISTER_SEND  "Failure in *_chan_register_send()",
350    failure CHAN_DEREGISTER_SEND "Failure in *_chan_deregister_send()",
351    failure CHAN_REGISTER_RECV  "Failure in *_chan_register_recv()",
352    failure CHAN_DEREGISTER_RECV "Failure in *_chan_deregister_recv()",
353    failure LMP_CHAN_INIT       "Failure in lmp_chan_init()",
354    failure UMP_CHAN_INIT       "Failure in ump_chan_init()",
355    failure LMP_CHAN_RECV       "Failure in lmp_chan_recv()",
356    failure UMP_CHAN_RECV       "Failure in ump_chan_recv()",
357    failure LMP_CHAN_SEND       "Failure in lmp_chan_send()",
358    failure LMP_CHAN_BIND       "Failure in lmp_chan_bind()",
359    failure UMP_CHAN_BIND       "Failure in ump_chan_bind()",
360    failure LMP_CHAN_ACCEPT     "Failure in lmp_chan_accept()",
361    failure UMP_CHAN_ACCEPT     "Failure in ump_chan_accept()",
362    failure LMP_ALLOC_RECV_SLOT "Failure in lmp_chan_alloc_recv_slot()",
363    failure LMP_NOT_CONNECTED   "Channel is disconnected",
364    failure MSGBUF_OVERFLOW     "Attempted to demarshall beyond bounds of message buffer",
365    failure MSGBUF_CANNOT_GROW  "Failed to grow message buffer while marshalling",
366    failure RCK_NOTIFY          "Failure in rck_notify()",
367    failure IPI_NOTIFY          "Failure in ipi_notify()",
368
369    // IDC binding/export and Monitor client interface
370    failure MONITOR_CLIENT_BIND "Error in monitor_client_lmp_bind()",
371    failure MONITOR_CLIENT_ACCEPT "Error in monitor_client_lmp_accept()",
372    failure NAMESERVICE_NOT_BOUND "Name service client is not bound",
373    failure NAMESERVICE_UNKNOWN_NAME "Lookup failed: unknown name",
374    failure NAMESERVICE_INVALID_NAME "Invalid record retrieved (no iref attribute)",
375    failure BIND_LMP_REQ        "Failure sending bind_lmp_request to monitor",
376    failure BIND_UMP_REQ        "Failure sending bind_ump_request to monitor",
377    failure BIND_LMP_REPLY      "Failure sending bind_lmp_reply to monitor",
378    failure BIND_UMP_REPLY      "Failure sending bind_ump_reply to monitor",
379    failure NO_LMP_BIND_HANDLER "LMP connection handler not registered for this service",
380    failure NO_UMP_BIND_HANDLER "UMP connection handler not registered for this service",
381    failure MONITOR_CAP_SEND    "Failed sending capability via monitor",
382    failure MONITOR_RPC_BIND    "Error in monitor_rpc_init()",
383    failure MONITOR_RPC_NULL    "Monitor RPC client is uninitialized",
384
385    // multihop
386    failure BIND_MULTIHOP_REQ   "Failed sending bind_multihop_request to monitor",
387    failure NO_MULTIHOP_BIND_HANDLER "MULTIHOP connection handler not registered for this service",
388    failure BIND_MULTIHOP_SAME_CORE "Cannot create a multihop channel to service on the same core",
389
390    // Bulk transfer
391    failure BULK_UNKNOWN_ID    "Unknown bulk transfer block ID",
392
393    // Domain
394    failure NO_SPANNED_DISP       "There is no spanned dispatcher on the given core",
395    failure SEND_RUN_FUNC_REQUEST "Failure in trying to send run_func_request",
396    failure SEND_CAP_REQUEST      "Failure in trying to send capability",
397    failure CAP_COPY_FAIL      "cap_copy failed",
398    failure CAP_DELETE_FAIL      "cap_delete failed",
399
400    // Initialisation
401    failure RAM_ALLOC_SET          "Failure in ram_alloc_set()",
402    failure MORECORE_INIT          "Failure in morecore_init()",
403    failure MONITOR_CLIENT_INIT    "Failure in monitor_client_init",
404    failure MONITOR_CLIENT_CONNECT "Failure in monitor_client_connect",
405    failure TERMINAL_INIT          "Failure in terminal_init()",
406    failure DOMAIN_INIT            "Failure in domain_init()",
407    failure GET_MON_BLOCKING_IREF  "Error while retrieving monitor's blocking channel service IREF from monitor",
408    failure GET_MEM_IREF           "Failure sending memory iref request",
409    failure GET_NAME_IREF          "Error while retrieving name service IREF from monitor",
410    failure GET_RAMFS_IREF         "Error while retrieving ramfsd service IREF from monitor",
411    failure NAMESERVICE_CLIENT_INIT "Failure initialising nameservice client",
412
413    // Threads package
414    failure THREAD_CREATE       "A version of thread create failed",
415    failure THREAD_JOIN        "Joining more than once not allowed",
416    failure THREAD_JOIN_DETACHED    "Tried to join with a detached thread",
417    failure THREAD_DETACHED    "Thread is already detached",
418
419    // Waitset/event code
420    failure CHAN_ALREADY_REGISTERED "Attempt to register for an event on a channel which is already registered",
421    failure CHAN_NOT_REGISTERED    "Channel is not registered with a waitset",
422    failure WAITSET_IN_USE         "Waitset has pending events or blocked threads",
423    failure WAITSET_CHAN_CANCEL    "Error in waitset_chan_cancel()",
424    failure NO_EVENT               "Nothing pending in check_for_event()",
425    failure EVENT_DISPATCH         "Error in event_dispatch()",
426    failure EVENT_ALREADY_RUN      "Error in event_queue_cancel(): event has already been run",
427    failure EVENT_QUEUE_EMPTY      "Error in event_queue_trigger(): queue is empty",
428
429    // LDT management on x86
430    failure SEGBASE_OVER_4G_LIMIT  "Segment base address is above 32-bit boundary",
431    failure LDT_FULL               "LDT is out of space",
432    failure LDT_SELECTOR_INVALID   "Segment selector is invalid for LDT",
433
434    // Process management client library
435    failure PROC_MGMT_CLIENT_ACCEPT "Error in proc_mgmt_client_lmp_accept()",
436};
437
438// errors in Flounder-generated bindings
439errors flounder FLOUNDER_ERR_ {
440    failure INVALID_STATE       "Invalid/corrupt state in binding structure",
441    failure TX_BUSY             "Cannot queue message for transmit: queue is full",
442    failure TX_MSG_SIZE         "Trying to send a message which is larger than declared",
443    failure RX_EMPTY_MSG        "Incoming message invalid: empty payload",
444    failure RX_INVALID_MSGNUM   "Incoming message invalid: unknown message code",
445    failure RX_INVALID_LENGTH   "Incoming message has invalid length",
446    failure BUF_RECV_MORE       "(internal) incomplete buffer received; call again for more",
447    failure BUF_SEND_MORE       "(internal) incomplete buffer sent; call again to send more",
448    failure GENERIC_BIND_NO_MORE_DRIVERS "Generic bind() call failed after trying all enabled interconnect drivers",
449    failure CHANGE_WAITSET      "Error in change_waitset() call",
450    failure CHANGE_MONITOR_WAITSET "Error changing waitset on underlying monitor binding",
451    failure UMP_ALLOC_NOTIFY    "Error while allocating notify cap/state for UMP",
452    failure UMP_STORE_NOTIFY    "Error while storing notify cap for UMP",
453
454    failure BIND                  "Error in flounder generated bind call",
455
456    // XXX: errors from old flounder stubs, to be removed
457    failure CREATE_MSG          "Flounder marshalling code failed: create_msg() returned NULL", // FIXME
458    failure MARSHALLING         "Error while marshalling",
459    failure DEMARSHALLING       "Error while demarshalling",
460    failure RPC_MISMATCH        "RPC response not matching the call",
461
462};
463
464// errors generated by bcast library
465errors bcast BCAST_ERR_ {
466    failure SEND      "Failure in bcast_send function",
467    failure SEND_SSF  "Failure in trying to send ssf msg",
468};
469
470// errors generated in the monitor-client protocol
471errors mon_client MON_CLIENT_ERR_ {
472    failure SPAN_DOMAIN_REQUEST   "Error sending span_domain_request msg",
473    failure URPC_BLOCK            "Error sending urpc_block msg",
474};
475
476// errors generated by the Monitor
477errors monitor MON_ERR_ {
478    failure IDC_BIND_NOT_SAME_CORE "Cannot perform IDC bind call: IREF is on another core",
479    failure IDC_BIND_LOCAL      "Cannot perform IDC bind call: intra-domain binding",
480    failure INVALID_CORE_ID     "Core ID is invalid (out of range)",
481    failure INVALID_IREF        "Invalid IREF for bind call",
482    failure IREF_ALLOC          "Cannot allocate IREF, table full",
483    failure SPAN_STATE_ALLOC    "Failed to allocate span state",
484    failure SEND_REMOTE_MSG     "Sending message to remote core failed",
485    failure INVALID_MON_ID      "Monitor ID in message is invalid",
486    failure NO_MONITOR_FOR_CORE "No monitor loaded on this core ID",
487    failure CAP_IDENTIFY        "Error in cap_identify",
488    failure CAP_CREATE          "Failure creating new capability",
489    failure CAP_REMOTE          "Failure in remote cap operation",
490    failure CAP_FOREIGN         "Could not perform operation because cap is foreign",
491    failure CAP_MOVE            "Cap could not be moved",
492    failure RCAP_DB_NOT_FOUND   "Cannot find cap in remote cap db",
493    failure RCAP_DB_LOCK        "Error gaining lock in remote cap db",
494    failure RCAP_DB_UNLOCK      "Error unlocking cap in remote cap db",
495    failure RCAP_DB_ADD         "Error adding cap to remote cap db",
496    failure SAME_CORE           "Cannot perform operation on same core as caller",
497    failure REMOTE_CAP_NEED_REVOKE  "Cap has descendants on another core, cannot be retyped",
498    failure REMOTE_CAP_RETRY    "Remote Cap operation failed but retry",
499    failure SPAWN_CORE          "Failure spawning a new core",
500    failure SPAWN_DOMAIN        "Failure in trying to spawn a domain",
501    failure INTERN_NEW_MONITOR  "Error in intern_new_monitor()",
502    failure CAP_SEND            "Permanent error sending cap for URPC channel",
503    failure CAP_SEND_TRANSIENT  "Transient error sending cap for URPC channel",
504    failure ROUTE_SET           "Sending route set msg failed",
505    failure SPAN_DOMAIN         "span_domain failed",
506    failure MAP_URPC_CHAN       "failure while mapping in URPC channel state",
507    failure RAM_ALLOC_ERR       "failure in ram_alloc, err failed",
508    failure RAM_ALLOC_RETERR    "failure in ram_alloc, reterr failed",
509    failure MULTICAST_PAGE_MAP  "Could not map the multicast page in monitor",
510    failure WRONG_CAP_TYPE      "Cap of not expected type",
511    failure INTERN_SET          "Failure in intern_set",
512    failure ROUTE_RESET         "Failure in sending route reset msg",
513    failure MAP_MULTIBOOT       "Failure in trying to map multiboot image",
514    failure UNICAST_SET         "Failure in unicast_set()",
515    failure MULTICAST_SET       "Failure in multicast_set()",
516    failure BCAST_INIT          "Failure in bcast_init()",
517    failure BCAST_CONNECT       "Failure in bcast_connect()",
518    failure CCAST_INIT          "Failure in ccast_init()",
519    failure CCAST_CONNECT       "Failure in ccast_connect()",
520    failure UNICAST_CONNECT     "Failure in connecting unicast path",
521    failure MULTICAST_CONNECT   "Failure in connecting multicast path",
522    failure UNICAST_INIT        "Failure in initing unicast path",
523    failure MULTICAST_INIT      "Failure in initing multicast path",
524    failure SPAWN_XCORE_MONITOR "Failure in spawn_xcore_monitor()",
525    failure INCOMPLETE_ROUTE    "(Portion of) routing table not present",
526
527    // Resource controller
528    failure RSRC_ALLOC		"Out of resource domains",
529    failure RSRC_MEMBER_LIMIT	"Reached member limit of resource domain",
530    failure RSRC_ILL_MANIFEST	"Illegal manifest",
531    failure RSRC_NOT_FOUND	"Resource domain not found on this core",
532
533    // capops
534    failure CAPOPS_BUSY         "Other end not ready for operation",
535
536    // Invocations
537    failure INVOKE_IRQ_ALLOCATE "Unable to allocate IRQ vector",
538    failure INVOKE_IRQ_SET "Unable to install IRQ vector",
539};
540
541// errors related to the routing library
542errors routing ROUTE_ERR_ {
543    // These are for the old routing library, remove them when old lib is removed
544    failure NEW_ROUTE           "Failure in creating a new route",
545    failure EXPORT              "Failure in exporting new route",
546    failure LOOKUP              "Failure in looking up new route",
547    failure BIND                "Failure in binding with route",
548    failure CORE_NOT_FOUND      "Core not found in unicast send",
549    failure SET_EXPECTED        "Failure in using the set expected function",
550    failure SEND                "Failure in using the send function",
551    failure NO_SLOTS            "Convergecast route ran out of slots to hold records",
552
553    // These are for the new routing library
554    failure WRONG_GROUP_ID      "Group id not found",
555    failure CALL_INIT           "Call route_init before using this",
556    failure CREATE_GROUP_RPC    "Error in using the create_group rpc",
557    failure SET_GROUP_RPC       "Error in using the set_group rpc",
558    failure GET_GROUP_RPC       "Error in using the get_group rpc",
559    failure ALLOC_NID_RPC       "Error in using the alloc_nid rpc",
560};
561
562// errors related to spawn code
563errors spawn SPAWN_ERR_ {
564    failure LOAD                "Failure while loading",
565    failure SPAN                "Failure while spanning",
566    failure RUN                 "Failure while making dispatcher runnable",
567    failure VSPACE_MAP          "Nested failure in spawn_vspace_map",
568    failure GET_CMDLINE_ARGS    "Failure in get_cmdline_args",
569    failure SETUP_ENV           "Failure in spawn_setup_env",
570    failure UNKNOWN_TARGET_ARCH    "Unknown target architecture type",
571    failure UNSUPPORTED_TARGET_ARCH     "Unsupported target architecture type",
572
573    failure SETUP_CSPACE    "Failure in spawn_setup_cspace",
574    failure DETERMINE_CPUTYPE    "Failure in spawn_determine_cputype",
575    failure VSPACE_INIT     "Failure in spawn_vspace_init",
576    failure SETUP_DISPATCHER     "Failure in spawn_setup_dispatcher",
577    failure ELF_MAP         "Failure in spawn_elf_map",
578
579    failure SET_CAPS         "Failure in set_special_caps",
580    failure MONEP_SLOT_ALLOC "Failure allocating a slot for monitor EP",
581    failure MONITOR_CLIENT         "Failure in monitor_client_setup",
582    failure FREE             "Failure in spawn_free",
583
584    // spawn_cspace
585    failure CREATE_ROOTCN       "Failure creating root CNode",
586    failure CREATE_TASKCN       "Failure creating task CNode",
587    failure MINT_TASKCN         "Failure minting task CNode into root CNode",
588    failure CREATE_PAGECN       "Failure creating page CNode",
589    failure CREATE_VNODE        "Failure creating top-level VNode",
590    failure COPY_VNODE          "Failure copying top-level VNode from existing domain",
591    failure CREATE_DISPATCHER   "Failure creating DCB",
592    failure CREATE_DISPATCHER_FRAME "Failure creating dispatcher frame",
593    failure CREATE_SELFEP       "Failure creating endpoint to self",
594    failure CREATE_ARGSPG       "Failure creating page for arguments",
595    failure CREATE_FDSPG        "Failure creating page for file descriptors",
596    failure MINT_ROOTCN         "Failure minting root CNode into task CNode",
597    failure CREATE_SLOTALLOC_CNODE "Failure creating slot_alloc cnode",
598    failure MINT_BASE_PAGE_CN   "Failure minting base page CNode into root CNode",
599    failure MINT_SEGCN          "Failure minting segment CNode into root CNode",
600    failure MINT_PAGECN         "Failure minting page CNode into root CNode",
601    failure MINT_INHERITCN      "Failure minting inherit CNode into root CNode",
602
603    // setup_vspace
604    failure MAP_DISPATCHER_TO_NEW "Failure mapping dispatcher frame to new domain",
605    failure MAP_DISPATCHER_TO_SELF "Failure mapping dispatcher frame to parent",
606    failure MAP_ARGSPG_TO_NEW   "Failure mapping arguments page to new domain",
607    failure MAP_ARGSPG_TO_SELF  "Failure mapping arguments page to parent",
608    failure MAP_FDSPG_TO_NEW   "Failure mapping file descriptors page to new domain",
609    failure MAP_FDSPG_TO_SELF  "Failure mapping file descriptors page to parent",
610
611    failure FILL_SMALLCN        "Failure filling smallcn of new domain",
612    failure MAP_BOOTINFO        "Failure mapping bootinfo to new domain",
613    failure FIND_MODULE         "Didn't find module to be spawned",
614    failure MAP_MODULE          "Failed mapping in module",
615    failure UNMAP_MODULE        "Failed unmapping module",
616    failure CREATE_SEGCN        "Failed to create segment CNode",
617    failure CREATE_SMALLCN      "Failed to create small RAM caps CNode",
618
619    // setup env
620    failure ARGSPG_OVERFLOW     "Overflow in arguments page: too many arguments or environment variables",
621    failure SERIALISE_VSPACE    "Error in serialising vspace data",
622
623    // setup inherited caps
624    failure SETUP_INHERITED_CAPS "Failure setup inherited caps",
625
626    // setup argument caps
627    failure SETUP_ARGCN          "Failure setup CNode containing caps passed as arguments",
628    failure COPY_ARGCN           "Error copying CNode containing caps passed as arguments",
629
630    // setup file descriptors
631    failure SETUP_FDCAP         "Failure setting up frame for copying file descriptors",
632    failure FDSPG_OVERFLOW     "Overflow in file descriptors page: too many file descriptors",
633
634    // setup session id cap
635    failure SETUP_SIDCAP        "Failure setting up session capability",
636
637    failure SETUP_KERNEL_CAP    "Failure setting up kernel capability",
638
639    // spawn_free
640    failure DELETE_ROOTCN       "Failure deleting root CNode cap in parent",
641    failure FREE_ROOTCN         "Failure freeing slot for root CNode cap in parent",
642    failure DELETE_TASKCN       "Failure deleting task CNode cap in parent",
643    failure FREE_TASKCN         "Failure freeing slot for task CNode cap in parent",
644
645    failure COPY_PACN           "Error copying phys addr CNode cap",
646    failure COPY_MODULECN       "Error copying module CNode cap",
647    failure COPY_IRQ_CAP        "Error copying IRQ cap",
648    failure COPY_IO_CAP         "Error copying IO cap",
649    failure COPY_PERF_MON	"Error copying performance monitoring cap",
650    failure COPY_KERNEL_CAP     "Error copying Kernel cap",
651    failure COPY_INHERITCN_CAP  "Error copying capability from inherited cnode",
652    failure COPY_PROC_MNG_CAP   "Error copying ProcessManager cap",
653    failure COPY_DOMAIN_CAP     "Error copying domain cap",
654    failure COPY_DEVMAN_CAP     "Error copying devman cap",
655
656    // make_runnable
657    failure DISPATCHER_SETUP    "Dispatcher setup",
658
659    // domain management
660    failure DOMAIN_ALLOCATE    "No more domain descriptors",
661    failure DOMAIN_NOTFOUND    "Domain not found",
662    failure DOMAIN_RUNNING    "Domain is running",
663    
664    failure IDENTIFY_PROC_MNGR_CAP "Failed to identify process manager cap",
665    failure NOT_PROC_MNGR          "Request did not come from the process manager",
666
667    failure CREATE_DOMAIN_TABLE  "Failed to create domain hash table",
668    failure DOMAIN_CAP_HASH      "Failed to compute hash code for domain cap",
669    failure DOMAIN_TABLE_FIND    "Failed to find requested domain in domain table",
670
671    failure FIND_SPAWNDS       "Unable to find spawn daemons",
672    failure MALFORMED_SPAWND_RECORD "Spawn record without ID found?",
673};
674
675// errors related to the process manager
676errors proc_mgmt PROC_MGMT_ERR_ {
677    failure NOT_MONITOR          "Received monitor-only request from non-monitor domain",
678    failure SPAWND_EXISTS        "Requested spawnd slot already exists",
679    failure INVALID_SPAWND       "Not connected to spawnd on the requested core",
680    failure CREATE_DOMAIN_CAP    "Failed to create new domain cap",
681    failure SPAWND_REQUEST       "Failed to send request to spawnd",
682    failure DOMAIN_CAP_HASH      "Failed to compute hash code for domain cap",
683    failure CREATE_CLIENTS_TABLE "Failed to create pending clients hash table",
684    failure CLIENTS_TABLE_FIND   "Failed to find requested client in pending clients table",
685    failure CREATE_DOMAIN_TABLE  "Failed to create domain hash table",
686    failure DOMAIN_TABLE_FIND    "Failed to find requested domain in domain table",
687    failure DOMAIN_NOT_RUNNING   "Domain is not currently running",
688    failure ALREADY_SPANNED      "Domain has already been spanned to the given core",
689    failure KILL                 "Failed to kill requested domain",
690};
691
692// errors from ELF library
693errors libelf ELF_ERR_ {
694    failure FILESZ              "Invalid file size",
695    failure HEADER              "Incompatible ELF header",
696    failure PROGHDR             "Failed program header sanity checks",
697    failure ALLOCATE            "Nested failure in allocator function",
698    failure NOT_PAGE_ALIGNED    "Unaligned load address specified in ELF header",
699};
700
701// errors from memory management library
702errors libmm MM_ERR_ {
703    failure FIND_NODE           "Failure in find_node()",
704    failure CHUNK_NODE          "Failure in chunk_node()",
705    failure SLOT_MM_ALLOC       "Nested failure in slot allocator calling mm_alloc",
706    failure SLOT_NOSLOTS        "Slot allocator has run out of slots",
707    failure SLOT_ALLOC_INIT     "Failure initialising slot allocator",
708    failure MM_INIT             "Failure in mm_init()",
709    failure MM_ADD              "Failure in mm_add()",
710    failure MM_ADD_MULTI        "Failure in mm_add_multi()",
711    failure MM_FREE             "Failure in mm_free()",
712    failure NEW_NODE            "Failed allocating new node from slot allocator",
713    failure OUT_OF_BOUNDS       "Given memory base address / size exceeds bounds of allocator",
714    failure ALREADY_PRESENT     "Node already present in add_node()",
715    failure ALREADY_ALLOCATED   "Requested node already allocated in find_node()",
716    failure NOT_FOUND           "No matching node found",
717    failure MISSING_CAPS        "Region exists in allocator, but intermediate caps are missing",
718    failure CHUNK_SLOT_ALLOC    "Failure allocating slots for chunking",
719    failure RESIZE_NODE         "Nested failure in resize_node()",
720    failure REALLOC_RANGE       "Nested failure in realloc_range()",
721};
722
723// errors in init
724errors init INIT_ERR_ {
725    failure SPAWN_MEM_SERV      "Failed to spawn mem_serv",
726    failure INIT_MEM_SERV       "Failed to initialise mem_serv",
727    failure SPAWN_MONITOR       "Failed to spawn monitor",
728    failure INIT_MONITOR        "Failed to init monitor",
729    failure COPY_EP_TO_MEM_SERV "Failed copying EP to mem_serv",
730    failure COPY_EP_TO_MONITOR  "Failed copying EP to monitor",
731    failure SETUP_MONITOR_CHAN  "Failed setting up channel to monitor",
732    failure SETUP_MEM_SERV_CHAN "Failed setting up channel to mem_serv",
733    failure RUN_MONITOR         "Failed to make monitor runnable",
734    failure RUN_MEM_SERV        "Failed to make mem_serv runnable",
735    failure FREE_MONITOR        "Failed to free spawn caps from monitor",
736    failure FREE_MEM_SERV       "Failed to free spawn caps from mem_serv",
737    failure COPY_SUPERCN_CAP    "Failed to copy superCN cap to mem_serv",
738    failure MAP_BOOTINFO        "Failed to map bootinfo to child",
739    failure COPY_KERNEL_CAP     "Failed to copy kernel cap to monitor",
740    failure COPY_BSP_KCB        "Error copying BSP KernelControlBlock",
741    failure COPY_IPI            "Failed to copy IPI cap to monitor",
742    failure COPY_PROC_MNG_CAP   "Failed to copy ProcessManager cap to monitor",
743    failure COPY_PERF_MON       "Failed to copy performance monitoring cap to monitor",
744    failure COPY_MODULECN_CAP   "Failed to copy module CNode cap to monitor",
745    failure COPY_PACN_CAP       "Failed to copy phys addr CNode cap to monitor",
746    failure COPY_IRQ_CAP        "Failed to copy IRQ cap to monitor",
747    failure COPY_IO_CAP         "Failed to copy IO cap to monitor",
748    failure COPY_UMP_CAP        "Failed to copy UMP cap to monitor",
749    failure NO_MATCHING_RAM_CAP "No suitably-sized RAM cap found when initialising local memory allocator",
750};
751
752//errors in continuation management
753errors filter CONT_ERR_ {
754    failure NO_MORE_SLOTS        "No free slots available",
755};
756
757
758
759//errors in ethersrv
760errors ethersrv ETHERSRV_ERR_ {
761    failure TOO_MANY_BUFFERS    "ethersrv failed to allocate a new buffer descriptor in register_buffer",
762    failure TOO_MANY_VNICS      "MAX_VNICS reached, can't create more VNICS",
763    failure BUFFER_NOT_FOUND    "ethersrv did not find the buff given filter reg",
764    failure NOT_ENOUGH_MEM      "not enough internal memory with driver",
765    failure CANT_TRANSMIT       "Cant transmit the packet",
766    failure INVALID_STATE       "VNIC is in invalid state for current operation",
767    failure FRAME_CAP_MAP       "Cant map the frame cap in address space",
768};
769
770
771//errors in port management
772errors filter PORT_ERR_ {
773    failure NOT_ENOUGH_MEMORY   "Not enough memory for internals of port mng",
774    failure NO_MORE_PORT        "No free port available",
775    failure IN_USE              "Requested port is already in use",
776    failure REDIRECT            "Requested port cannot be redirected",
777    failure NOT_FOUND            "Could not find requested port to close",
778};
779
780
781//errors in Filter management
782errors filter NET_FILTER_ERR_ {
783    failure NOT_INITIALIZED      "Filter subsystem not yet initalized",
784    failure NOT_FOUND           "Filter not found or not installed",
785    failure ALREADY_EXISTS      "Filter already installed",
786};
787
788
789//errors in Filter management
790errors filter FILTER_ERR_ {
791    failure NOT_ENOUGH_MEMORY   "Not enough memory to register filters",
792    failure BUFF_NOT_FOUND      "Buffer given for filter reg. not found on driver",
793    failure FILTER_BUSY         "Filter memory is busy in another operation.Try Again",
794    failure NO_NETD_MEM         "Netd memory for filter is not registered",
795    failure FILTER_NOT_FOUND    "requested filter for de/re-registration not found",
796    failure BUFFER_NOT_FOUND    "requested filter for re-registration not found",
797
798};
799
800// errors generated in the terminal library
801errors term TERM_ERR_ {
802    failure TERMINAL_IN_USE             "Can not associate session with terminal, the terminal is already in use",
803    failure NOT_PART_OF_SESSION         "Domain is not part of a session",
804    failure EXPORT_SESSION_INTERFACE    "Failed to export terminal session interface",
805    failure REGISTER_SESSION_INTERFACE  "Failed to register terminal session interface at nameservice",
806    failure EXPORT_OUT_INTERFACE        "Failed to export terminal interface for outgoing characters",
807    failure EXPORT_IN_INTERFACE         "Failed to export terminal interface for incoming characters",
808    failure EXPORT_CONF_INTERFACE       "Failed to export terminal configuration interface for configuration messages",
809    failure ASSOCIATE_WITH_TERM_REPLY   "Failed to send session_associate_with_terminal_reply",
810    failure RECV_CHARS                  "Received characters at outgoing characters interface",
811    failure SEND_CHARS                  "Could not send characters to client",
812    failure RECV_CONFIGURATION          "Received a configuration message a the client",
813    failure FILTER_NOT_FOUND            "Could not find filter specified for removal",
814    failure TRIGGER_NOT_FOUND           "Could not find trigger specified for removal",
815    failure LOOKUP_SESSION_RECORD       "Error looking up session record at octopus",
816    failure PARSE_SESSION_RECORD        "Error parsing session record",
817    failure BIND_IN_INTERFACE           "Failed to bind to terminal interface for incoming characters",
818    failure BIND_OUT_INTERFACE          "Failed to bind to terminal interface for outgoing characters",
819    failure BIND_CONF_INTERFACE         "Failed to bind to terminal configuration interface",
820    failure IO                          "Terminal I/O error",
821    failure TX_BUSY                     "Failed to send message, terminal client is busy",
822    failure UNKNOWN_CONFIG_OPT          "Unknown configuration option",
823    failure CHANGE_WAITSET              "Failed to change the waitset",
824};
825
826// errors generated by libangler
827errors angler ANGLER_ERR_ {
828    failure LOOKUP_TERMINAL         "Error looking up iref of terminal session interface at nameservice",
829    failure CREATE_SESSIONID        "Error creating ID capability used to represent session",
830    failure BIND_TERMINAL           "Error binding to terminal session interface",
831    failure INIT_RPCCLIENT          "Error initializing rpc client for terminal session interface",
832    failure ASSOCIATE_WITH_TERMINAL "Error associating session with terminal",
833    failure STORE_SESSION_STATE     "Error storing session state at ocotpus",
834};
835
836// errors in trace
837errors trace TRACE_ERR_ {
838    success SUBSYS_DISABLED     "Event not recorded because subsystem is disabled",
839    failure NO_BUFFER           "Trace buffer does not exist",
840    failure MAP_BUF             "Failed to map trace buffer",
841    failure CREATE_CAP          "Failed to create trace buffer cap",
842    failure CAP_COPY            "Failed to copy trace buffer cap",
843    failure KERNEL_INVOKE       "Failed to set up tracing in kernel",
844    failure UNAVAIL             "Tracing not available on core",
845};
846
847errors driverkit DRIVERKIT_ERR_ {
848    failure NO_CAP_FOUND         "No capability to map this address range.",
849    failure NO_DRIVER_FOUND      "No driver found that corresponds to this class.",
850    failure DRIVER_DETACH        "Unable to destroy driver by detaching it from device.",
851    failure DRIVER_INIT          "There was a problem initializing the driver.",
852    failure CONTROL_IFACE_EXPORT "Can't export control interface.",
853    failure CONTROL_SERVICE_INIT "Failed to initialize control service.",
854    failure CAP_CAPACITY         "Cap capacity reached, can't send more.",
855};
856
857// errors in PCI/device handling
858errors pci PCI_ERR_ {
859    failure DEVICE_NOT_INIT     "Device not initialized",
860    failure IOAPIC_INIT         "Failed in ioapic_init()",
861    failure MINT_IOCAP          "Failed to mint IO cap",
862    failure ROUTING_IRQ         "Failed while routing interrupt",
863    failure IRQTABLE_SET        "Failed to set handler on local IRQ table",
864    failure UNKNOWN_GSI         "Unknown global system interrupt number",
865    failure INVALID_VECTOR      "Invalid interrupt vector",
866    failure DEVICE_INIT         "Could not initialize device",
867    failure MEM_ALLOC           "Could not allocate memory",
868    failure WRONG_INDEX         "Invalid index for requested cap",
869    failure MSIX_NOTSUP         "MSI-X is not sypported by the device",
870    failure MSIX_BADVECTOR      "Invalid index for MSI-X vector",
871    failure MSIX_DISABLED       "MSI-X is not enabled for this device",
872    failure SRIOV_NOT_SUPPORTED "SR-IOV not supported by this device",
873    failure SRIOV_MAX_VF        "SR-IOV trying to enable VF number larger than max supported",
874    failure ARG_PARSE           "PCI argument parse",
875    failure NO_CAP              "No capability given",
876};
877
878// errors in ACPI
879errors acpi ACPI_ERR_ {
880    failure NO_MCFG_TABLE       "No MCFG Table found.",
881    failure INVALID_PATH_NAME   "Invalid ACPI path name.",
882    failure INVALID_HANDLE      "Invalid ACPI handle.",
883    failure NO_CHILD_BRIDGE     "No matching child bridge found.",
884    failure GET_RESOURCES       "Failed to execute _CRT method.",
885    failure SET_IRQ             "Failed to set IRQ for device.",
886    failure NO_MADT_TABLE       "No APIC found in ACPI.",
887    failure OBJECT_NOT_FOUND    "Could not locate ACPI object.",
888};
889
890errors iommu IOMMU_ERR_ {
891    failure INVALID_CAP     "Cap is not a suitable VNode",
892    failure IOMMU_NOT_FOUND "The IOMMU for the devices was not found",
893    failure DOM_NOT_FOUND   "Domain for cap was not found",
894    failure DEV_NOT_FOUND   "Device does not belong to the domain",
895    failure DEV_USED        "The device is currently used by another domain",
896    failure DOM_FULL        "No more domains can be created",
897    failure DOM_CREATE      "Failure while creating the domain",
898    failure NO_UNITS	    "Hardware doesn't contain any VT-d hardware units",
899    failure NOT_ENABLED     "IOMMU is not enabled",
900    failure INVALID_EP      "Endpoint is not valid",
901    failure NOT_SUPPORTED   "The requested operation is not supported",
902};
903
904// errors in the SKB
905errors skb SKB_ERR_ {
906    failure CONVERSION_ERROR    "Conversion (parsing) of the result failed.",
907    failure EXECUTION           "The SKB returned an error Check error code.",
908    failure EVALUATE            "Failure in skb_evalute()",
909    failure RUN                 "Failure in running rpc: run",
910    failure GOAL_FAILURE        "Posted goal could not be satisfied.",
911    failure UNEXPECTED_OUTPUT   "Query produced output but none was expected.",
912    failure OVERFLOW            "Parameter exceeds internal buffer length.",
913    success IO_OUTPUT           "Read I/O Output from SKB.",
914};
915
916errors skb_datagatherer SKB_DATAGATHERER_ERR_ {
917    failure CPUID               "Failed to collect CPUID information",
918};
919
920// errors in a file system implementation
921errors fs FS_ERR_ {
922    failure INVALID_FH          "The given file handle is invalid or has expired",
923    failure NOTDIR              "The given file handle is not a directory",
924    failure NOTFILE             "The given file handle is not a file",
925    failure INDEX_BOUNDS        "The given directory index is out of bounds",
926    failure NOTFOUND            "The given name does not exist",
927    failure EXISTS              "The given name already exists",
928    failure NOTEMPTY            "The given directory is not empty",
929
930    failure BULK_NOT_INIT       "The bulk transfer mode has not been initialised",
931    failure BULK_ALREADY_INIT   "The bulk_init() call may only be made once per connection",
932};
933
934// errors in the vfs library
935errors vfs VFS_ERR_ {
936    success EOF                 "End of file",
937    failure BAD_MOUNTPOINT      "The mountpoint is invalid",
938    failure MOUNTPOINT_IN_USE   "The given mountpoint is already in use",
939    failure BAD_URI             "The URI given to mount is invalid",
940    failure UNKNOWN_FILESYSTEM  "The filesystem type in the URI is unknown",
941    failure MOUNTPOINT_NOTFOUND "The given mountpoint doesn't exist",
942    failure NOT_SUPPORTED       "The file type does not support this operation",
943
944    failure IN_OPEN             "Nested error in vfs_open()",
945    failure IN_STAT             "Nested error in vfs_stat()",
946    failure IN_READ             "Nested error in vfs_read()",
947
948    failure BCACHE_LIMIT    "Number of buffer cache connections exceeded",
949};
950
951// NFS client errors
952// FIXME: someone could copy in the real error strings...
953errors nfs NFS_ERR_ {
954    /* transport error */
955    failure TRANSPORT "Unknown error in underlying NFS RPC transport.",
956
957    /* mount errors */
958    failure MNT_PERM "Not owner",
959    failure MNT_NOENT "No such file or directory",
960    failure MNT_IO "I/O error",
961    failure MNT_ACCES "Permission denied",
962    failure MNT_NOTDIR "Not a directory",
963    failure MNT_INVAL "Invalid argument",
964    failure MNT_NAMETOOLONG "Filename too long",
965    failure MNT_NOTSUPP "Operation not supported",
966    failure MNT_SERVERFAULT "A failure on the server",
967
968    /* NFSv3 errors */
969    failure PERM "NFS error (PERM). See RFC1813.",
970    failure NOENT "NFS error (NOENT). See RFC1813.",
971    failure IO "NFS error (IO). See RFC1813.",
972    failure NXIO "NFS error (NXIO). See RFC1813.",
973    failure ACCES "NFS error (ACCES). See RFC1813.",
974    failure EXIST "NFS error (EXIST). See RFC1813.",
975    failure XDEV "NFS error (XDEV). See RFC1813.",
976    failure NODEV "NFS error (NODEV). See RFC1813.",
977    failure NOTDIR "NFS error (NOTDIR). See RFC1813.",
978    failure ISDIR "NFS error (ISDIR). See RFC1813.",
979    failure INVAL "NFS error (INVAL). See RFC1813.",
980    failure FBIG "NFS error (FBIG). See RFC1813.",
981    failure NOSPC "NFS error (NOSPC). See RFC1813.",
982    failure ROFS "NFS error (ROFS). See RFC1813.",
983    failure MLINK "NFS error (MLINK). See RFC1813.",
984    failure NAMETOOLONG "NFS error (NAMETOOLONG). See RFC1813.",
985    failure NOTEMPTY "NFS error (NOTEMPTY). See RFC1813.",
986    failure DQUOT "NFS error (DQUOT). See RFC1813.",
987    failure STALE "NFS error (STALE). See RFC1813.",
988    failure REMOTE "NFS error (REMOTE). See RFC1813.",
989    failure BADHANDLE "NFS error (BADHANDLE). See RFC1813.",
990    failure NOT_SYNC "NFS error (NOT_SYNC). See RFC1813.",
991    failure BAD_COOKIE "NFS error (BAD_COOKIE). See RFC1813.",
992    failure NOTSUPP "NFS error (NOTSUPP). See RFC1813.",
993    failure TOOSMALL "NFS error (TOOSMALL). See RFC1813.",
994    failure SERVERFAULT "NFS error (SERVERFAULT). See RFC1813.",
995    failure BADTYPE "NFS error (BADTYPE). See RFC1813.",
996    failure JUKEBOX "NFS error (JUKEBOX). See RFC1813.",
997};
998
999// LWIP errors
1000errors lwip LWIP_ERR_ {
1001    failure MEM          "Out of memory error.",
1002    failure BUF          "Buffer error.",
1003    failure TIMEOUT      "Timeout.",
1004    failure RTE          "Routing problem.",
1005    failure ABRT         "Connection aborted.",
1006    failure RST          "Connection reset.",
1007    failure CLSD         "Connection closed.",
1008    failure CONN         "Not connected.",
1009    failure VAL          "Illegal value.",
1010    failure ARG          "Illegal argument.",
1011    failure USE          "Address in use.",
1012    failure IF           "Low-level netif error",
1013    failure ISCONN       "Already connected.",
1014    failure INPROGRESS   "Operation in progress",
1015    failure TXFULL       "TX capacity is full, try again later",
1016};
1017
1018// DIST library errors
1019errors dist DIST_ERR_ {
1020     failure NS_REG     "Name service register failed.",
1021     failure NS_LOOKUP     "Name service lookup failed.",
1022};
1023
1024// octopus library errors
1025errors octopus  OCT_ERR_ {
1026    failure NO_RECORD           "No record exists matching the specified query.",
1027    failure NO_RECORD_NAME      "Your query needs to specify a designated record name (no regex/variable allowed).",
1028    failure CONSTRAINT_MISMATCH "The constraints you specified on set do not match the record in the database.",
1029    failure QUERY_SIZE          "Query is too big. Try to increase MAX_QUERY_LENGTH.",
1030    failure INVALID_FORMAT      "The read format you have specified is not valid.",
1031    failure UNKNOWN_ATTRIBUTE   "An attribute in your format was not found in the record.",
1032    failure UNSUPPORTED_BINDING "This binding is unsupported by the underlying implementation.",
1033    failure PARSER_FAIL         "Record parser encountered syntax error.",
1034    failure ENGINE_FAIL         "Database error during query execution.",
1035    failure NO_SUBSCRIPTION     "No subscription found matching the query.",
1036    failure NO_SUBSCRIBERS      "No subscription found matching the query.",
1037    failure MAX_SUBSCRIPTIONS   "Failed to register subscription. Try to increase MAX_SUBSCRIPTIONS.",
1038    failure INVALID_ID          "Invalid Trigger ID.",
1039    failure CAP_NAME_UNKNOWN    "Capability storage: Unknown name.",
1040    failure CAP_OVERWRITE       "Capability storage: Cap already exists.",
1041    failure IDCAP_INVOKE        "Error invoking ID capability.",
1042};
1043
1044// kaluga library errors
1045errors kaluga  KALUGA_ERR_ {
1046    failure PARSE_MODULES          "Cannot parse menu.lst.",
1047    failure MODULE_NOT_FOUND       "Boot module not found.",
1048    failure DRIVER_ALREADY_STARTED "Driver for this type of device is already running.",
1049    failure DRIVER_NOT_AUTO        "Driver not declared as auto in menu.lst.",
1050    failure WAITING_FOR_ACPI       "Unable to wait for ACPI",
1051    failure WATCHING_FOR_SPAWNDS   "Unable to watch for spawnds",
1052    failure QUERY_LOCAL_APIC       "Unable to query local APIC.",
1053    failure UNKNOWN_PLATFORM       "Unable to initialize platform",
1054    failure CAP_ACQUIRE            "Unable to acquire capabilities for driver",
1055};
1056
1057// errors generated by THC
1058errors thc THC_ {
1059    failure CANCELED            "Operation canceled",
1060};
1061
1062// errors generated by memory server
1063errors ms MS_ERR_ {
1064    failure SKB            "Invalid data from SKB",
1065    failure INIT_PEERS        "Could not initialise peer data structures",
1066};
1067
1068// errors generated by startd
1069errors startd STARTD_ERR_ {
1070    failure BOOTMODULES        "Invalid bootmodules file",
1071};
1072
1073errors lox LOX_ERR_ {
1074    failure INIT_LOCKS        "Failure initialising locks",
1075    failure NO_LOCKS        "No more locks available",
1076};
1077
1078// errors generated by VBE framebuffer driver
1079errors vbe VBE_ERR_ {
1080    failure MODE_NOT_FOUND      "Unknown/unsupported video mode requested",
1081    failure BIOS_CALL_FAILED    "Unknown error returned from VBE BIOS call",
1082};
1083
1084// errors generated by lib/blk/ahci
1085errors ahcid AHCI_ERR_ {
1086    failure PORT_INIT           "Port initialization failed",
1087    failure PORT_INVALID        "Provided port id is not valid",
1088    failure PORT_BUSY           "Port has been opened elsewhere",
1089    failure PORT_MISMATCH       "Port is not opened by client",
1090    failure NO_FREE_PRD         "No free PRD left for user data",
1091    failure ILLEGAL_ARGUMENT    "Illegal argument in call",
1092};
1093
1094errors sata SATA_ERR_ {
1095    failure INVALID_TYPE        "Unknown FIS type or invalid/unimplemented field for type",
1096};
1097
1098errors sata ENET_ERR_ {
1099    failure DEV_RESET        "Device reset failed",
1100    failure PHY_RESET        "Phy reset failed",
1101    failure MDIO_WRITE        "Timeout while trying to write to MDIO",
1102    failure MDIO_READ        "Timeout while trying to reading from MDIO",
1103};
1104
1105errors mmchs MMC_ERR_ {
1106    failure TRANSFER                "Error during card read/write operation.",
1107    FAILURE READ_READY              "Card not ready for reading.",
1108    FAILURE WRITE_READY             "Card not ready for writing.",
1109};
1110
1111errors sdhc SDHC_ERR_ {
1112    failure UNKOWN_VENDOR           "Unknown SDHC controller idendtity",
1113    failure RESET_TIMEOUT           "Timeout while resetting",
1114    failure CMD_TIMEOUT             "Command time out",
1115    failure CMD_CONFLICT            "Conflict on command line",
1116    failure TEST_FAILED             "Test Failed",
1117};
1118
1119// errors generated by FAT
1120errors fat FAT_ERR_ {
1121    failure BAD_FS              "Filesystem does not look like FAT, or is an unsupported kind of FAT",
1122};
1123
1124// errors generated by VFS's fs cache library
1125errors cache FS_CACHE_ {
1126    failure FULL                "Cache is full",
1127    failure NOTPRESENT          "Requested key is not in cache",
1128    failure CONFLICT            "Cache already contains an item with the requested key",
1129};
1130
1131// errors generated by OMAP SDMA driver
1132errors omap_sdma OMAP_SDMA_ERR_ {
1133    failure NO_AVAIL_CHANNEL                "All channels are currently allocated",
1134    failure TRANSACTION                     "Memory Transaction error occured",
1135    failure SUPERVISOR                      "Supvervisor transaction error occured",
1136    failure MISALIGNED_ADDRESS              "Transfer addresses were misaligned",
1137    failure HARDWARE_LIMIT_SIZE             "Transfer size values too large for hardware",
1138    failure HARDWARE_LIMIT_ADDR             "Transfer address modifier values too large for hardware",
1139    failure OUT_OF_BOUNDS                   "Transfer access outside frame cap boundaries",
1140    failure CAP_LOOKUP                      "Failure during frame capability lookup",
1141};
1142
1143// common/generic errors
1144errors common ERR_ {
1145    failure INVALID_ARGS        "Invalid arguments",
1146    failure NOTIMP              "Not implemented",
1147};
1148
1149errors bulk_transfer BULK_TRANSFER_ {
1150    failure MEM                 "Internal not enough memory error",
1151    failure NO_CALLBACK         "No callback was set",
1152    failure CHAN_CREATE         "Channel create operation failed.",
1153    failure CHAN_BIND           "Channel bind operation failed.",
1154    failure CHAN_ASSIGN_POOL    "Channel assign pool operation failed.",
1155    failure CHAN_STATE          "Channel has a wrong state",
1156    failure CHAN_TRUST          "Channel has a invalid trust level.",
1157    failure CHAN_INVALID_EP     "Channel has an invalid endpoint.",
1158    failure CHAN_DIRECTION      "The channel has the wrong direction for this operation.",
1159    failure POOL_INVALD         "The pool does not match.",
1160    failure POOL_NOT_ASSIGNED   "The pool has not yet been assigned to a channel.",
1161    failure POOL_ASSIGN_VETO    "The assignment request of the pool has been vetoed.",
1162    failure POOL_MAP            "Mapping of the pool failed",
1163    failure POOL_UNMAP          "The Unmapping of the pool failed",
1164    failure POOL_ALREADY_ASSIGNED "The pool has already been assigned to this channel.",
1165    failure POOL_ALREADY_REMAPPED "The pool has already been remapped.",
1166    failure BUFFER_NOT_OWNED    "The supplied buffer is not owned by this domain.",
1167    failure BUFFER_INVALID      "The buffer is not valid.",
1168    failure BUFFER_ALREADY_MAPPED "The buffer is already mapped.",
1169    failure BUFFER_STATE        "The buffer has a wrong state.",
1170    failure BUFFER_REFCOUNT     "The buffer has a wrong reference count.",
1171    failure BUFFER_NOT_A_COPY   "The released buffer is not a copy.",
1172    failure BUFFER_MAP          "The mapping of the buffer failed",
1173    failure BUFFER_UNMAP        "The unmapping of the buffer failed.",
1174    failure ALLOC_BUFFER_SIZE   "The supplied buffer size is not valid.",
1175    failure ALLOC_BUFFER_COUNT  "The supplied buffer count is not valid.",
1176    failure INVALID_ARGUMENT    "The supplied argument is invalid.",
1177    failure SM_NO_PENDING_MSG   "No pending message associated with that tid",
1178    failure SM_EXCLUSIVE_WS     "BULK_SM: Exclusive waitset required per channel.",
1179    failure NET_MAX_QUEUES      "The number of maximum queues is reached",
1180    failure NET_POOL_USED       "The pool is already used over a no-copy channel.",
1181
1182
1183};
1184
1185errors virtio VIRTIO_ERR_ {
1186    failure SIZE_INVALID         "Size of the ringe is zero or not a power of two",
1187    failure MAX_INDIRECT         "Too much indirect descriptors",
1188    failure CAP_SIZE             "Supplied cap is too small",
1189    failure QUEUE_FULL           "The queue was full",
1190    failure QUEUE_EMPTY          "The queue was empty",
1191    failure BACKEND              "Invalid backend",
1192    failure DEVICE_REGISTER      "The device registers have not been mapped",
1193    failure NOT_VIRTIO_DEVICE    "The device is not a VirtIO device",
1194    failure VERSION_MISMATCH     "The VirtIO versions do mismatch",
1195    failure DEVICE_STATUS        "VirtIO device has the wrong status",
1196    failure DEVICE_TYPE          "The VirtIO device is not of the expected type",
1197    failure DEVICE_IDLE          "The VirtIO device is idle. No new requests.",
1198    failure QUEUE_ACTIVE         "The selected qeueue is already activated",
1199    failure QUEUE_INVALID        "The selected queue does not exist",
1200    failure QUEUE_BUSY           "The queue is busy.",
1201    failure BUFFER_SIZE          "The buffer size is invalid.",
1202    failure BUFFER_STATE         "The state of the buffer / buffer list is invalid",
1203    failure ARG_INVALID          "The given argument is invalid.",
1204    failure NO_BUFFER            "No buffer given, number of buffers is 0",
1205    failure ALLOC_FULL           "The allocator is already full",
1206    failure BUFFER_USED          "The buffer is already enqueued and used",
1207    failure NO_DESC_AVAIL        "There is no descriptor availabe",
1208    failure DEQ_CHAIN            "Not the entire chain could be dequeued",
1209    failure INVALID_RING_INDEX   "The supplied index is not valid",
1210    failure BLK_REQ_IOERR        "The request ended in an IO error",
1211    failure BLK_REQ_UNSUP        "The request type was not supported",
1212};
1213
1214errors xeon_phi XEON_PHI_ERR_ {
1215    failure MGR_REGISTER_FAILED  "Registration with the Xeon Phi Manager failed",
1216    failure MGR_MAX_CARDS        "There are too much drivers connected",
1217    failure MSG_NOT_REACHABLE    "There is not connection to that Xeon Phi",
1218    failure MSG_NOT_INITIALIZED  "Messaging service has not been initialized",
1219    failure CLIENT_OPEN_REJECT   "Client rejected the channel open",
1220    failure CLIENT_DOMAIN_VOID   "The targeted domain was not found",
1221    failure CLIENT_REGISTER      "Xeon Phi client could not be registered with the driver",
1222    failure CLIENT_BUSY          "The connection to the Xeon Phi driver is busy",
1223    failure INVALID_ID           "Supplied Xeon Phi ID is invalid",
1224};
1225
1226errors dma DMA_ERR_ {
1227    failure PCI_ADDRESS           "The PCI address of the device is not as expected",
1228    failure DEVICE_UNSUPPORTED    "Device ID not supported /  wrong configuration",
1229    failure DEVICE_IDLE           "The device is idle, no transfers finished",
1230    failure ARG_INVALID           "Supplied argument was not valid",
1231    failure RESET_TIMEOUT         "The reset attempt timed out",
1232    failure NO_DESCRIPTORS        "There are too less descriptors available",
1233    failure NO_REQUESTS           "There are no request descriptors left",
1234    failure CHAN_ERROR            "Hardware channel error",
1235    failure CHAN_BUSY             "The channel is busy and cannot accept more",
1236    failure CHAN_IDLE             "There were no finished requests on the channel",
1237    failure REQUEST_UNFINISHED    "The request is still in operation",
1238    failure REQUEST_UNSUPPORTED   "Request is not supported by this device/channel",
1239    failure REQUEST_TOO_LARGE     "Request size is too large",
1240    failure REQUEST_ID            "Request with that ID does not exist",
1241    failure ALIGNMENT             "The address / size is worngly alined",
1242    failure MEM_OVERLAP           "The memory regions overlap",
1243    failure MEM_NOT_REGISTERED    "The memory region was not registered",
1244    failure MEM_OUT_OF_RANGE      "Memory region is out of supported range",
1245    failure SVC_REJECT              "Service request was rejected",
1246    failure SVC_RESOURCES         "No resources to handle the service",
1247    failure SVC_VOID              "There is no service that could serve the request",
1248    failure SVC_NO_CONNECTION     "There is no connection established",
1249    failure SVC_BUSY              "Connecton is busy with an RPC",
1250};
1251
1252errors xomp XOMP_ERR_ {
1253    failure INVALID_WORKER_ARGS   "The command line arguments are not XOMP worker",
1254    failure BAD_INVOCATION        "Domain was not spawned with worker args",
1255    failure INVALID_MSG_FRAME     "The supplied messaging frame was invalid",
1256    failure SPAWN_WORKER_FAILED   "Spawning of the worker failed",
1257    failure MASTER_NOT_INIT       "XOMP Master library has not been initialized",
1258    failure WORKER_INIT_FAILED    "Worker initialization failed",
1259    failure WORKER_STATE          "worker is in the wrong state",
1260    failure INVALID_MEMORY        "the memory has not been registred / shared",
1261    failure INVALID_TOKEN         "the token was invalid",
1262    failure INVALID_ARGUMENTS     "the library was initialized with invalid args",
1263};
1264
1265errors numa NUMA_ERR_ {
1266    failure NOT_AVAILABLE         "NUMA functionality is not available",
1267    failure BITMAP_PARSE          "Parsing of the bitmap character string failed",
1268    failure BITMAP_RANGE          "The bitmap is too small to hold the data",
1269    failure NUMA_MEMBIND          "Setting the memory binding failed",
1270    failure LIB_INIT              "Library initialization failure",
1271    failure SKB                   "Failed to query or connect the SKB",
1272    failure SKB_DATA              "The returned data from the SKB is incomplete",
1273    failure NODEID_INVALID        "Invalid node ID",
1274    failure COREID_INVALID        "Invalid core ID",
1275};
1276
1277errors cpuid CPUID_ERR_ {
1278    failure UNSUPPORTED_FUNCTION    "This function is not valid on this CPU.",
1279    failure UNKNOWN_VENDOR          "The CPU vendor is not supported",
1280    failure INVALID_INDEX           "There is no leaf with this index",
1281};
1282
1283errors cpuid DEVQ_ERR_ {
1284    failure INIT_QUEUE              "Could not initalize queue",
1285    failure BUFFER_ID               "Could not get a buffer id.",
1286    failure BUFFER_NOT_IN_REGION    "The buffer id is not in this region",
1287    failure BUFFER_ALREADY_IN_USE   "The buffer is already in use",
1288    failure BUFFER_NOT_IN_USE       "The buffer not in use",
1289    failure INVALID_BUFFER_ARGS     "Invalid arguments for specified buffer.",
1290    failure INVALID_REGION_ID       "The region id is not valid",
1291    failure REGION_DESTROY          "The region has still buffers that are in use",
1292    failure INVALID_REGION_ARGS     "Invalid arguments for region",
1293    failure REGISTER_REGION         "Unable to register region with queue",
1294    failure QUEUE_EMPTY             "Nothing to dequeue.",
1295    failure QUEUE_FULL              "The queue is full.",
1296    failure DESCQ_INIT              "Failure in descriptor queue init",
1297};
1298
1299errors cpuid NET_QUEUE_ERR_ {
1300    failure WRONG_PORT              "Received packet with wrong src/dst port",
1301    failure WRONG_IP                "Received packet with wrong src/dst IP",
1302    failure CHECKSUM                 "Header checksum failed",
1303    failure NOT_UDP                 "Received packet is not UDP",
1304    failure UNKNOWN_BUF_TYPE        "Neither RX or TX buffer",
1305};
1306
1307// errors generated by network cards
1308errors sfn NIC_ERR_{
1309    failure IO                   "Error during card IO",
1310    failure INTR                 "Interrupted system call",
1311    failure NOSYS                "Not implemented",
1312    failure UNKNOWN              "Uknown error",
1313    failure TX_PKT               "Error sending packet",
1314    failure RX_PKT               "Error receiving packet",
1315    failure RX_DISCARD           "Error, packet needs to be discared",
1316    failure ALLOC_BUF            "Error allocating buffer",
1317    failure REGISTER_REGION      "Error registering a region",
1318    failure DEREGISTER_REGION    "Error deregistering a region",
1319    failure ALLOC_QUEUE          "Failure allocating queue",
1320    failure ENQUEUE              "Failure during enqueue",
1321    failure QDRIVER              "Failure starting queue driver",
1322};
1323
1324errors queue QSERVICE_ERR_{
1325    failure NAME                 "Name too long",
1326    failure ALREADY_ADDED        "EP factory already added",
1327    failure NOT_FOUND            "Could not request EP with given name",
1328    failure NO_VALID_EP          "No valid EP could not initalized client",
1329    failure INVALID_CLIENT       "Invalid client struct",
1330    failure INVALID_SERVICE      "Invalid service struct",
1331}; 
1332
1333errors psci PSCI_ERR_{
1334    failure NOT_SUPPORTED    "Function not supported",
1335    failure INVALID_PARAMETER "Invalid parameters supplied",
1336    failure DENIED           "Access to the function denied",
1337    failure ALREADY_ON       "Core is already on",
1338    failure ON_PENDING       "There is a pending CPU_ON for this core",
1339    failure INTERNAL_FAILURE "Internal failure",
1340    failure NOT_PRESENT      "Resource not present",
1341    failure DISABLED         "Core is disabled",
1342    failure INVALID_ADDRESS  "Invald address provided",
1343    failure UNKNOWN_ERROR    "Error number unknown",
1344};
1345
1346errors arrakis ARRA_ERR_ {
1347    failure GUEST_NOT_FOUND       "Guest with given handle not found",
1348};
1349
1350errors vas VAS_ERR_ {
1351    failure CREATE_NAME_CONFLICT   "Name already in use",
1352    failure NO_PERMISSION          "Insufficient permissions to perform requested action",
1353    failure NOT_FOUND              "Cannot find requested address space.",
1354    failure DETACH_SWITCH          "Must switch out before detaching",
1355    failure ATTACH_STATE           "Cannot attach. Not in detached state",
1356    failure SWITCH_NOT_ATTACHED    "Can't switch to unattached file",
1357    failure NOT_SUPPORTED          "Currently unsupported functionality",
1358    failure OUT_OF_HANDLES         "Not enough handles",
1359};
1360