projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: lttng: placing probe on symbol starting with `_`
[lttng-tools.git]
/
src
/
bin
/
lttng
/
commands
/
destroy.c
diff --git
a/src/bin/lttng/commands/destroy.c
b/src/bin/lttng/commands/destroy.c
index a258f64097f275c0c116c4cae1232f5dba181544..be0261d11b760b67561b52d324334c35f39162e7 100644
(file)
--- a/
src/bin/lttng/commands/destroy.c
+++ b/
src/bin/lttng/commands/destroy.c
@@
-155,12
+155,16
@@
static int destroy_session(struct lttng_session *session)
goto error;
}
if (ret_code != LTTNG_OK) {
goto error;
}
if (ret_code != LTTNG_OK) {
- ret = -
LTTNG_OK
;
+ ret = -
ret_code
;
goto error;
}
status = lttng_destruction_handle_get_rotation_state(handle,
&rotation_state);
goto error;
}
status = lttng_destruction_handle_get_rotation_state(handle,
&rotation_state);
+ if (status != LTTNG_DESTRUCTION_HANDLE_STATUS_OK) {
+ ERR("Failed to get rotation state from destruction handle");
+ goto skip_wait_rotation;
+ }
switch (rotation_state) {
case LTTNG_ROTATION_STATE_NO_ROTATION:
break;
switch (rotation_state) {
case LTTNG_ROTATION_STATE_NO_ROTATION:
break;
@@
-224,23
+228,27
@@
error:
*/
static int destroy_all_sessions(struct lttng_session *sessions, int count)
{
*/
static int destroy_all_sessions(struct lttng_session *sessions, int count)
{
- int i, ret = CMD_SUCCESS;
+ int i;
+ bool error_occurred = false;
+ assert(count >= 0);
if (count == 0) {
MSG("No session found, nothing to do.");
if (count == 0) {
MSG("No session found, nothing to do.");
- } else if (count < 0) {
- ERR("%s", lttng_strerror(ret));
- goto error;
}
for (i = 0; i < count; i++) {
}
for (i = 0; i < count; i++) {
- ret = destroy_session(&sessions[i]);
+ int ret = destroy_session(&sessions[i]);
+
if (ret < 0) {
if (ret < 0) {
- goto error;
+ ERR("%s during the destruction of session \"%s\"",
+ lttng_strerror(ret),
+ sessions[i].name);
+ /* Continue to next session. */
+ error_occurred = true;
}
}
}
}
-error:
- return
ret
;
+
+ return
error_occurred ? CMD_ERROR : CMD_SUCCESS
;
}
/*
}
/*
@@
-346,8
+354,10
@@
int cmd_destroy(int argc, const char **argv)
command_ret = destroy_session(&sessions[i]);
if (command_ret) {
success = 0;
command_ret = destroy_session(&sessions[i]);
if (command_ret) {
success = 0;
+ ERR("%s during the destruction of session \"%s\"",
+ lttng_strerror(command_ret),
+ sessions[i].name);
}
}
-
}
}
}
}
This page took
0.024513 seconds
and
4
git commands to generate.