X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fcmd.c;h=7715e145260d7886bfac00683fa28b1d34362f7a;hb=63dd3d7b5b0979c4b11a6bb8d0e4155120482977;hp=712b68089002fde4855e4de8278a5b6bec672035;hpb=b8e2fb80c105c5a8241f7b35744e4a86d7e4125c;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/cmd.c b/src/bin/lttng-sessiond/cmd.c index 712b68089..7715e1452 100644 --- a/src/bin/lttng-sessiond/cmd.c +++ b/src/bin/lttng-sessiond/cmd.c @@ -4662,7 +4662,7 @@ enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cm { enum lttng_error_code ret_code; const struct lttng_trigger *query_target_trigger; - struct lttng_action *query_target_action = NULL; + const struct lttng_action *query_target_action = NULL; struct lttng_trigger *matching_trigger = NULL; const char *trigger_name; uid_t trigger_owner; @@ -4673,6 +4673,10 @@ enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cm case LTTNG_ERROR_QUERY_TARGET_TYPE_TRIGGER: query_target_trigger = lttng_error_query_trigger_borrow_target(query); break; + case LTTNG_ERROR_QUERY_TARGET_TYPE_CONDITION: + query_target_trigger = + lttng_error_query_condition_borrow_target(query); + break; case LTTNG_ERROR_QUERY_TARGET_TYPE_ACTION: query_target_trigger = lttng_error_query_action_borrow_trigger_target( query); @@ -4748,6 +4752,21 @@ enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cm } break; + case LTTNG_ERROR_QUERY_TARGET_TYPE_CONDITION: + { + trigger_status = lttng_trigger_condition_add_error_results( + matching_trigger, results); + + switch (trigger_status) { + case LTTNG_TRIGGER_STATUS_OK: + break; + default: + ret_code = LTTNG_ERR_UNK; + goto end; + } + + break; + } case LTTNG_ERROR_QUERY_TARGET_TYPE_ACTION: { const enum lttng_action_status action_status = @@ -5028,6 +5047,11 @@ enum lttng_error_code snapshot_record(struct ltt_session *session, consumer_copy_output(snapshot_output->consumer); strcpy(snapshot_kernel_consumer_output->chunk_path, snapshot_chunk_name); + + /* Copy the original domain subdir. */ + strcpy(snapshot_kernel_consumer_output->domain_subdir, + original_kernel_consumer_output->domain_subdir); + ret = consumer_copy_sockets(snapshot_kernel_consumer_output, original_kernel_consumer_output); if (ret < 0) { @@ -5050,6 +5074,11 @@ enum lttng_error_code snapshot_record(struct ltt_session *session, consumer_copy_output(snapshot_output->consumer); strcpy(snapshot_ust_consumer_output->chunk_path, snapshot_chunk_name); + + /* Copy the original domain subdir. */ + strcpy(snapshot_ust_consumer_output->domain_subdir, + original_ust_consumer_output->domain_subdir); + ret = consumer_copy_sockets(snapshot_ust_consumer_output, original_ust_consumer_output); if (ret < 0) {