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