projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: uninitialized return value
[lttng-tools.git]
/
src
/
bin
/
lttng-sessiond
/
ht-cleanup.c
diff --git
a/src/bin/lttng-sessiond/ht-cleanup.c
b/src/bin/lttng-sessiond/ht-cleanup.c
index 48b0be6e4c3b6cbfb829fb563ec101fdd1b846ad..57d6aec118bc6f5ac1df1df3057d63077b82b315 100644
(file)
--- a/
src/bin/lttng-sessiond/ht-cleanup.c
+++ b/
src/bin/lttng-sessiond/ht-cleanup.c
@@
-24,6
+24,7
@@
#include "lttng-sessiond.h"
#include "health-sessiond.h"
#include "lttng-sessiond.h"
#include "health-sessiond.h"
+#include "testpoint.h"
void *thread_ht_cleanup(void *data)
{
void *thread_ht_cleanup(void *data)
{
@@
-39,6
+40,10
@@
void *thread_ht_cleanup(void *data)
health_register(health_sessiond, HEALTH_SESSIOND_TYPE_HT_CLEANUP);
health_register(health_sessiond, HEALTH_SESSIOND_TYPE_HT_CLEANUP);
+ if (testpoint(sessiond_thread_ht_cleanup)) {
+ goto error_testpoint;
+ }
+
health_code_update();
ret = sessiond_set_thread_pollset(&events, 2);
health_code_update();
ret = sessiond_set_thread_pollset(&events, 2);
@@
-55,13
+60,14
@@
void *thread_ht_cleanup(void *data)
health_code_update();
while (1) {
health_code_update();
while (1) {
- DBG3("[ht-thread] Polling on %d fds.",
- LTTNG_POLL_GETNB(&events));
+ DBG3("[ht-thread] Polling.");
/* Inifinite blocking call, waiting for transmission */
restart:
health_poll_entry();
ret = lttng_poll_wait(&events, -1);
/* Inifinite blocking call, waiting for transmission */
restart:
health_poll_entry();
ret = lttng_poll_wait(&events, -1);
+ DBG3("[ht-thread] Returning from poll on %d fds.",
+ LTTNG_POLL_GETNB(&events));
health_poll_exit();
if (ret < 0) {
/*
health_poll_exit();
if (ret < 0) {
/*
@@
-84,6
+90,14
@@
restart:
revents = LTTNG_POLL_GETEV(&events, i);
pollfd = LTTNG_POLL_GETFD(&events, i);
revents = LTTNG_POLL_GETEV(&events, i);
pollfd = LTTNG_POLL_GETFD(&events, i);
+ if (!revents) {
+ /*
+ * No activity for this FD
+ * (poll implementation).
+ */
+ continue;
+ }
+
/* Thread quit pipe has been closed. Killing thread. */
ret = sessiond_check_thread_quit_pipe(pollfd, revents);
if (ret) {
/* Thread quit pipe has been closed. Killing thread. */
ret = sessiond_check_thread_quit_pipe(pollfd, revents);
if (ret) {
@@
-125,6
+139,7
@@
exit:
error:
lttng_poll_clean(&events);
error_poll_create:
error:
lttng_poll_clean(&events);
error_poll_create:
+error_testpoint:
utils_close_pipe(ht_cleanup_pipe);
ht_cleanup_pipe[0] = ht_cleanup_pipe[1] = -1;
DBG("[ust-thread] cleanup complete.");
utils_close_pipe(ht_cleanup_pipe);
ht_cleanup_pipe[0] = ht_cleanup_pipe[1] = -1;
DBG("[ust-thread] cleanup complete.");
This page took
0.037942 seconds
and
4
git commands to generate.