summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
d7b63d8)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
#include "lttng-sessiond.h"
#include "health-sessiond.h"
#include "lttng-sessiond.h"
#include "health-sessiond.h"
void *thread_ht_cleanup(void *data)
{
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);
error:
lttng_poll_clean(&events);
error_poll_create:
error:
lttng_poll_clean(&events);
error_poll_create:
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.");
health_register(health_sessiond, HEALTH_SESSIOND_TYPE_APP_REG_DISPATCH);
health_register(health_sessiond, HEALTH_SESSIOND_TYPE_APP_REG_DISPATCH);
+ if (testpoint(sessiond_thread_app_reg_dispatch)) {
+ goto error_testpoint;
+ }
+
health_code_update();
CDS_INIT_LIST_HEAD(&wait_queue.head);
health_code_update();
CDS_INIT_LIST_HEAD(&wait_queue.head);
DBG("Dispatch thread dying");
if (err) {
health_error();
DBG("Dispatch thread dying");
if (err) {
health_error();
- if (err) {
- health_error();
- ERR("Health error occurred in %s", __func__);
- }
-
/* Notify that the registration thread is gone */
notify_ust_apps(0);
/* Notify that the registration thread is gone */
notify_ust_apps(0);
error_create_poll:
error_testpoint:
DBG("UST Registration thread cleanup complete");
error_create_poll:
error_testpoint:
DBG("UST Registration thread cleanup complete");
+ if (err) {
+ health_error();
+ ERR("Health error occurred in %s", __func__);
+ }
health_unregister(health_sessiond);
return NULL;
health_unregister(health_sessiond);
return NULL;
TESTPOINT_DECL(sessiond_thread_manage_kernel);
TESTPOINT_DECL(sessiond_thread_manage_kernel_before_loop);
TESTPOINT_DECL(sessiond_thread_manage_consumer);
TESTPOINT_DECL(sessiond_thread_manage_kernel);
TESTPOINT_DECL(sessiond_thread_manage_kernel_before_loop);
TESTPOINT_DECL(sessiond_thread_manage_consumer);
+TESTPOINT_DECL(sessiond_thread_ht_cleanup);
+TESTPOINT_DECL(sessiond_thread_app_manage_notify);
+TESTPOINT_DECL(sessiond_thread_app_reg_dispatch);
#endif /* SESSIOND_TESTPOINT_H */
#endif /* SESSIOND_TESTPOINT_H */
#include "lttng-sessiond.h"
#include "ust-thread.h"
#include "health-sessiond.h"
#include "lttng-sessiond.h"
#include "ust-thread.h"
#include "health-sessiond.h"
/*
* This thread manage application notify communication.
/*
* This thread manage application notify communication.
health_register(health_sessiond,
HEALTH_SESSIOND_TYPE_APP_MANAGE_NOTIFY);
health_register(health_sessiond,
HEALTH_SESSIOND_TYPE_APP_MANAGE_NOTIFY);
+ if (testpoint(sessiond_thread_app_manage_notify)) {
+ goto error_testpoint;
+ }
+
health_code_update();
ret = sessiond_set_thread_pollset(&events, 2);
health_code_update();
ret = sessiond_set_thread_pollset(&events, 2);
error:
lttng_poll_clean(&events);
error_poll_create:
error:
lttng_poll_clean(&events);
error_poll_create:
utils_close_pipe(apps_cmd_notify_pipe);
apps_cmd_notify_pipe[0] = apps_cmd_notify_pipe[1] = -1;
DBG("Application notify communication apps thread cleanup complete");
utils_close_pipe(apps_cmd_notify_pipe);
apps_cmd_notify_pipe[0] = apps_cmd_notify_pipe[1] = -1;
DBG("Application notify communication apps thread cleanup complete");