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