Fix: RCU lock imbalance on error in cmd_snapshot_list_outputs()
[lttng-tools.git] / include / lttng / lttng-error.h
CommitLineData
f73fabfd
DG
1/*
2 * lttng-error.h
3 *
4 * Linux Trace Toolkit Control Library Error Header File
5 *
6 * The following values are all the possible errors the lttng command line
7 * client can quit with.
8 *
9 * Copyright (C) 2012 - David Goulet <dgoulet@efficios.com>
10 *
11 * This library is free software; you can redistribute it and/or modify it
12 * under the terms of the GNU Lesser General Public License, version 2.1 only,
13 * as published by the Free Software Foundation.
14 *
15 * This library is distributed in the hope that it will be useful, but WITHOUT
16 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
17 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
18 * for more details.
19 *
20 * You should have received a copy of the GNU Lesser General Public License
21 * along with this library; if not, write to the Free Software Foundation,
22 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23 */
24
25#ifndef LTTNG_ERROR_H
26#define LTTNG_ERROR_H
27
5168918c
DG
28#ifdef __cplusplus
29extern "C" {
30#endif
31
f73fabfd
DG
32enum lttng_error_code {
33 LTTNG_OK = 10, /* Ok */
34 LTTNG_ERR_UNK = 11, /* Unknown Error */
12dfd2b9 35 LTTNG_ERR_UND = 12, /* Undefined command */
806e2684 36 LTTNG_ERR_SESSION_STARTED = 13, /* Session is running */
f73fabfd 37 LTTNG_ERR_UNKNOWN_DOMAIN = 14, /* Tracing domain not known */
a79d84dd 38 LTTNG_ERR_NOT_SUPPORTED = 15, /* Operation not supported */
f73fabfd
DG
39 LTTNG_ERR_NO_SESSION = 16, /* No session found */
40 LTTNG_ERR_CREATE_DIR_FAIL = 17, /* Create directory fail */
41 LTTNG_ERR_SESSION_FAIL = 18, /* Create session fail */
2f70b271 42 LTTNG_ERR_NO_SESSIOND = 19, /* No session daemon available */
785d2d0d
DG
43 LTTNG_ERR_SET_URL = 20, /* Error setting URL */
44 LTTNG_ERR_URL_EXIST = 21, /* URL already exists. */
7972aab2 45 LTTNG_ERR_BUFFER_NOT_SUPPORTED = 22, /* Buffer type not supported. */
f73fabfd 46 LTTNG_ERR_SESS_NOT_FOUND = 23, /* Session by name not found */
7972aab2 47 LTTNG_ERR_BUFFER_TYPE_MISMATCH = 24, /* Buffer type mismatched. */
f73fabfd 48 LTTNG_ERR_FATAL = 25, /* Fatal error */
a74934ba 49 LTTNG_ERR_NOMEM = 26, /* Not enough memory. */
f73fabfd
DG
50 LTTNG_ERR_SELECT_SESS = 27, /* Must select a session */
51 LTTNG_ERR_EXIST_SESS = 28, /* Session name already exist */
52 LTTNG_ERR_NO_EVENT = 29, /* No event found */
53 LTTNG_ERR_CONNECT_FAIL = 30, /* Unable to connect to unix socket */
6dc3064a 54 LTTNG_ERR_SNAPSHOT_OUTPUT_EXIST = 31, /* Snapshot output already exists */
f73fabfd
DG
55 LTTNG_ERR_EPERM = 32, /* Permission denied */
56 LTTNG_ERR_KERN_NA = 33, /* Kernel tracer unavalable */
57 LTTNG_ERR_KERN_VERSION = 34, /* Kernel tracer not compatible */
58 LTTNG_ERR_KERN_EVENT_EXIST = 35, /* Kernel event already exists */
59 LTTNG_ERR_KERN_SESS_FAIL = 36, /* Kernel create session failed */
60 LTTNG_ERR_KERN_CHAN_EXIST = 37, /* Kernel channel already exists */
61 LTTNG_ERR_KERN_CHAN_FAIL = 38, /* Kernel create channel failed */
62 LTTNG_ERR_KERN_CHAN_NOT_FOUND = 39, /* Kernel channel not found */
63 LTTNG_ERR_KERN_CHAN_DISABLE_FAIL = 40, /* Kernel disable channel failed */
64 LTTNG_ERR_KERN_CHAN_ENABLE_FAIL = 41, /* Kernel enable channel failed */
65 LTTNG_ERR_KERN_CONTEXT_FAIL = 42, /* Kernel add context failed */
66 LTTNG_ERR_KERN_ENABLE_FAIL = 43, /* Kernel enable event failed */
67 LTTNG_ERR_KERN_DISABLE_FAIL = 44, /* Kernel disable event failed */
68 LTTNG_ERR_KERN_META_FAIL = 45, /* Kernel open metadata failed */
69 LTTNG_ERR_KERN_START_FAIL = 46, /* Kernel start trace failed */
70 LTTNG_ERR_KERN_STOP_FAIL = 47, /* Kernel stop trace failed */
71 LTTNG_ERR_KERN_CONSUMER_FAIL = 48, /* Kernel consumer start failed */
72 LTTNG_ERR_KERN_STREAM_FAIL = 49, /* Kernel create stream failed */
6dc3064a 73 LTTNG_ERR_START_SESSION_ONCE = 50, /* Session needs to be started once. */
5c786ded 74 LTTNG_ERR_SNAPSHOT_FAIL = 51, /* Snapshot record failed. */
1c20f0e2 75 LTTNG_ERR_NO_STREAM = 52, /* Index without stream on relay. */
f73fabfd
DG
76 LTTNG_ERR_KERN_LIST_FAIL = 53, /* Kernel listing events failed */
77 LTTNG_ERR_UST_CALIBRATE_FAIL = 54, /* UST calibration failed */
5bcdda4f 78 LTTNG_ERR_UST_EVENT_ENABLED = 55, /* UST event already enabled. */
f73fabfd
DG
79 LTTNG_ERR_UST_SESS_FAIL = 56, /* UST create session failed */
80 LTTNG_ERR_UST_CHAN_EXIST = 57, /* UST channel already exist */
81 LTTNG_ERR_UST_CHAN_FAIL = 58, /* UST create channel failed */
82 LTTNG_ERR_UST_CHAN_NOT_FOUND = 59, /* UST channel not found */
83 LTTNG_ERR_UST_CHAN_DISABLE_FAIL = 60, /* UST disable channel failed */
84 LTTNG_ERR_UST_CHAN_ENABLE_FAIL = 61, /* UST enable channel failed */
b9dfb167 85 LTTNG_ERR_CHAN_EXIST = 62, /* Channel already exists. */
f73fabfd
DG
86 LTTNG_ERR_UST_ENABLE_FAIL = 63, /* UST enable event failed */
87 LTTNG_ERR_UST_DISABLE_FAIL = 64, /* UST disable event failed */
88 LTTNG_ERR_UST_META_FAIL = 65, /* UST open metadata failed */
89 LTTNG_ERR_UST_START_FAIL = 66, /* UST start trace failed */
90 LTTNG_ERR_UST_STOP_FAIL = 67, /* UST stop trace failed */
91 LTTNG_ERR_UST_CONSUMER64_FAIL = 68, /* 64-bit UST consumer start failed */
92 LTTNG_ERR_UST_CONSUMER32_FAIL = 69, /* 32-bit UST consumer start failed */
93 LTTNG_ERR_UST_STREAM_FAIL = 70, /* UST create stream failed */
7badf927 94 LTTNG_ERR_SNAPSHOT_NODATA = 71, /* No data in snapshot. */
cde3e505 95 LTTNG_ERR_NO_CHANNEL = 72, /* No channel found in the session. */
1c1c3634 96 LTTNG_ERR_SESSION_INVALID_CHAR = 73, /* Invalid characters found in session name. */
f73fabfd
DG
97 LTTNG_ERR_UST_LIST_FAIL = 74, /* UST listing events failed */
98 LTTNG_ERR_UST_EVENT_EXIST = 75, /* UST event exist */
99 LTTNG_ERR_UST_EVENT_NOT_FOUND = 76, /* UST event not found */
100 LTTNG_ERR_UST_CONTEXT_EXIST = 77, /* UST context exist */
101 LTTNG_ERR_UST_CONTEXT_INVAL = 78, /* UST context invalid */
102 LTTNG_ERR_NEED_ROOT_SESSIOND = 79, /* root sessiond is needed */
103 LTTNG_ERR_TRACE_ALREADY_STARTED = 80, /* Tracing already started */
104 LTTNG_ERR_TRACE_ALREADY_STOPPED = 81, /* Tracing already stopped */
105 LTTNG_ERR_KERN_EVENT_ENOSYS = 82, /* Kernel event type not supported */
85076754 106 LTTNG_ERR_NEED_CHANNEL_NAME = 83, /* Non-default channel exists within session: channel name needs to be specified with '-c name' */
b51ec5b4 107 LTTNG_ERR_NO_UST = 84, /* LTTng-UST tracer is not supported. Please rebuild lttng-tools with lttng-ust support enabled. */
f9b57ab2 108 LTTNG_ERR_SAVE_FILE_EXIST = 85, /* Session file already exists. */
12dfd2b9 109 LTTNG_ERR_SAVE_IO_FAIL = 86, /* IO error while writing session configuration */
a96bc65d
DG
110 LTTNG_ERR_LOAD_INVALID_CONFIG = 87, /* Invalid session configuration */
111 LTTNG_ERR_LOAD_IO_FAIL = 88, /* IO error while reading a session configuration */
112 LTTNG_ERR_LOAD_SESSION_NOENT = 89, /* Session file not found */
68808f4e 113 LTTNG_ERR_MAX_SIZE_INVALID = 90, /* Snapshot max size is invalid. */
fb14d0d8
JR
114 LTTNG_ERR_MI_OUTPUT_TYPE = 91, /* Invalid MI output format */
115 LTTNG_ERR_MI_IO_FAIL = 92, /* IO error while writing machine interface output */
116 LTTNG_ERR_MI_NOT_IMPLEMENTED = 93, /* Mi feature not implemented */
f73fabfd
DG
117 /* 94 */
118 /* 95 */
119 /* 96 */
120 LTTNG_ERR_INVALID = 97, /* Invalid parameter */
121 LTTNG_ERR_NO_USTCONSUMERD = 98, /* No UST consumer detected */
122 LTTNG_ERR_NO_KERNCONSUMERD = 99, /* No Kernel consumer detected */
123 LTTNG_ERR_EVENT_EXIST_LOGLEVEL = 100, /* Event enabled with different loglevel */
124 LTTNG_ERR_URL_DATA_MISS = 101, /* Missing network data URL */
125 LTTNG_ERR_URL_CTRL_MISS = 102, /* Missing network control URL */
126 LTTNG_ERR_ENABLE_CONSUMER_FAIL = 103, /* Enabling consumer failed */
127 LTTNG_ERR_RELAYD_CONNECT_FAIL = 104, /* lttng-relayd create session failed */
128 LTTNG_ERR_RELAYD_VERSION_FAIL = 105, /* lttng-relayd not compatible */
129 LTTNG_ERR_FILTER_INVAL = 106, /* Invalid filter bytecode */
130 LTTNG_ERR_FILTER_NOMEM = 107, /* Lack of memory for filter bytecode */
131 LTTNG_ERR_FILTER_EXIST = 108, /* Filter already exist */
132 LTTNG_ERR_NO_CONSUMER = 109, /* No consumer exist for the session */
fd1f0cde
JI
133 LTTNG_ERR_EXCLUSION_INVAL = 110, /* Invalid event exclusion data */
134 LTTNG_ERR_EXCLUSION_NOMEM = 111, /* Lack of memory while processing event exclusions */
930a2e99 135 LTTNG_ERR_INVALID_EVENT_NAME = 112, /* Invalid event name */
1f345e94 136 LTTNG_ERR_INVALID_CHANNEL_NAME = 113, /* Invalid channel name */
b93a4a13
MJ
137 LTTNG_ERR_PID_TRACKED = 114, /* PID already tracked */
138 LTTNG_ERR_PID_NOT_TRACKED = 115, /* PID not tracked */
141feb8c 139 LTTNG_ERR_INVALID_CHANNEL_DOMAIN = 116, /* Invalid channel domain */
83f4233d 140 LTTNG_ERR_OVERFLOW = 117, /* Overflow occurred. */
93ec662e
JD
141 LTTNG_ERR_SESSION_NOT_STARTED = 118, /* Session not started */
142 LTTNG_ERR_LIVE_SESSION = 119, /* Live session unsupported */
143 LTTNG_ERR_PER_PID_SESSION = 120, /* Per-PID sessions unsupported */
1ae5e83e 144 LTTNG_ERR_KERN_CONTEXT_UNAVAILABLE = 121, /* Context unavailable on this kernel */
c2561365
JD
145 LTTNG_ERR_REGEN_STATEDUMP_FAIL = 122, /* Failed to regenerate the state dump */
146 LTTNG_ERR_REGEN_STATEDUMP_NOMEM = 123, /* Failed to regenerate the state dump, not enough memory */
f73fabfd
DG
147
148 /* MUST be last element */
149 LTTNG_ERR_NR, /* Last element */
150};
151
1239a312
DG
152/*
153 * Return a human-readable error message for a LTTng error code.
154 *
155 * Parameter MUST be a negative value or else you'll get a generic message.
156 */
157extern const char *lttng_strerror(int code);
158
5168918c
DG
159#ifdef __cplusplus
160}
161#endif
162
f73fabfd 163#endif /* LTTNG_ERROR_H */
This page took 0.05017 seconds and 5 git commands to generate.