projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
lttng rotate command
[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 aad4bdd23f07db2ac8a9b53eaab6044a0abdf54e..6878aaa0da20a146808592b54d89efcfabd56977 100644
(file)
--- a/
src/bin/lttng/commands/destroy.c
+++ b/
src/bin/lttng/commands/destroy.c
@@
-35,6
+35,12
@@
static char *opt_session_name;
static int opt_destroy_all;
static int opt_no_wait;
static int opt_destroy_all;
static int opt_no_wait;
+#ifdef LTTNG_EMBED_HELP
+static const char help_msg[] =
+#include <lttng-destroy.1.h>
+;
+#endif
+
/* Mi writer */
static struct mi_writer *writer;
/* Mi writer */
static struct mi_writer *writer;
@@
-70,8
+76,8
@@
static int destroy_session(struct lttng_session *session)
}
session_was_stopped = ret == -LTTNG_ERR_TRACE_ALREADY_STOPPED;
if (!opt_no_wait) {
}
session_was_stopped = ret == -LTTNG_ERR_TRACE_ALREADY_STOPPED;
if (!opt_no_wait) {
-
_MSG("Waiting for data availability")
;
- fflush(stdout);
+
bool printed_wait_msg = false
;
+
do {
ret = lttng_data_pending(session->name);
if (ret < 0) {
do {
ret = lttng_data_pending(session->name);
if (ret < 0) {
@@
-84,12
+90,20
@@
static int destroy_session(struct lttng_session *session)
* returned value indicates availability.
*/
if (ret) {
* returned value indicates availability.
*/
if (ret) {
+ if (!printed_wait_msg) {
+ _MSG("Waiting for data availability");
+ fflush(stdout);
+ }
+
+ printed_wait_msg = true;
usleep(DEFAULT_DATA_AVAILABILITY_WAIT_TIME);
_MSG(".");
fflush(stdout);
}
} while (ret != 0);
usleep(DEFAULT_DATA_AVAILABILITY_WAIT_TIME);
_MSG(".");
fflush(stdout);
}
} while (ret != 0);
- MSG("");
+ if (printed_wait_msg) {
+ MSG("");
+ }
}
if (!session_was_stopped) {
/*
}
if (!session_was_stopped) {
/*
@@
-160,6
+174,7
@@
int cmd_destroy(int argc, const char **argv)
int ret = CMD_SUCCESS , i, command_ret = CMD_SUCCESS, success = 1;
static poptContext pc;
char *session_name = NULL;
int ret = CMD_SUCCESS , i, command_ret = CMD_SUCCESS, success = 1;
static poptContext pc;
char *session_name = NULL;
+ const char *leftover = NULL;
struct lttng_session *sessions;
int count;
struct lttng_session *sessions;
int count;
@@
-218,7
+233,8
@@
int cmd_destroy(int argc, const char **argv)
/* Recuperate all sessions for further operation */
count = lttng_list_sessions(&sessions);
if (count < 0) {
/* Recuperate all sessions for further operation */
count = lttng_list_sessions(&sessions);
if (count < 0) {
- command_ret = count;
+ ERR("%s", lttng_strerror(count));
+ command_ret = CMD_ERROR;
success = 0;
goto mi_closing;
}
success = 0;
goto mi_closing;
}
@@
-265,6
+281,14
@@
int cmd_destroy(int argc, const char **argv)
}
}
}
}
+ leftover = poptGetArg(pc);
+ if (leftover) {
+ ERR("Unknown argument: %s", leftover);
+ ret = CMD_ERROR;
+ success = 0;
+ goto mi_closing;
+ }
+
mi_closing:
/* Mi closing */
if (lttng_opt_mi) {
mi_closing:
/* Mi closing */
if (lttng_opt_mi) {
This page took
0.024322 seconds
and
4
git commands to generate.