projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: sessiond: timer: unitiliazed sigevent fields
[lttng-tools.git]
/
src
/
bin
/
lttng-sessiond
/
action-executor.c
diff --git
a/src/bin/lttng-sessiond/action-executor.c
b/src/bin/lttng-sessiond/action-executor.c
index 4f027fdb91b3e3b30ab8859a05fbf319739cefa7..2a0aab45c962db46f9e9f499a7bdaca3420bd98a 100644
(file)
--- a/
src/bin/lttng-sessiond/action-executor.c
+++ b/
src/bin/lttng-sessiond/action-executor.c
@@
-22,6
+22,7
@@
#include <lttng/action/start-session.h>
#include <lttng/action/stop-session.h>
#include <lttng/condition/evaluation.h>
#include <lttng/action/start-session.h>
#include <lttng/action/stop-session.h>
#include <lttng/condition/evaluation.h>
+#include <lttng/condition/event-rule-internal.h>
#include <lttng/lttng-error.h>
#include <lttng/trigger/trigger-internal.h>
#include <pthread.h>
#include <lttng/lttng-error.h>
#include <lttng/trigger/trigger-internal.h>
#include <pthread.h>
@@
-198,7
+199,9
@@
static int action_executor_notify_handler(struct action_executor *executor,
lttng_trigger_get_const_condition(work_item->trigger),
work_item->evaluation,
lttng_trigger_get_credentials(work_item->trigger),
lttng_trigger_get_const_condition(work_item->trigger),
work_item->evaluation,
lttng_trigger_get_credentials(work_item->trigger),
- LTTNG_OPTIONAL_GET_PTR(work_item->object_creds),
+ work_item->object_creds.is_set ?
+ &(work_item->object_creds.value) :
+ NULL,
client_handle_transmission_status, executor);
}
client_handle_transmission_status, executor);
}
@@
-598,8
+601,10
@@
static bool shutdown_action_executor_thread(void *_data)
{
struct action_executor *executor = _data;
{
struct action_executor *executor = _data;
+ pthread_mutex_lock(&executor->work.lock);
executor->should_quit = true;
pthread_cond_signal(&executor->work.cond);
executor->should_quit = true;
pthread_cond_signal(&executor->work.cond);
+ pthread_mutex_unlock(&executor->work.lock);
return true;
}
return true;
}
@@
-723,10
+728,10
@@
enum action_executor_status action_executor_enqueue(
signal = true;
error_unlock:
signal = true;
error_unlock:
- pthread_mutex_unlock(&executor->work.lock);
if (signal) {
pthread_cond_signal(&executor->work.cond);
}
if (signal) {
pthread_cond_signal(&executor->work.cond);
}
+ pthread_mutex_unlock(&executor->work.lock);
lttng_evaluation_destroy(evaluation);
return executor_status;
lttng_evaluation_destroy(evaluation);
return executor_status;
This page took
0.024469 seconds
and
4
git commands to generate.