X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Ftrigger-error-accounting.h;fp=src%2Fbin%2Flttng-sessiond%2Ftrigger-error-accounting.h;h=442ddf23c32dd7981829e394eccabae60b618459;hp=0000000000000000000000000000000000000000;hb=2463b7879c00298daa79744cdaae82ac061a4ed8;hpb=3a4595c2469472dee1656cde5f8882c2123efd3c diff --git a/src/bin/lttng-sessiond/trigger-error-accounting.h b/src/bin/lttng-sessiond/trigger-error-accounting.h new file mode 100644 index 000000000..442ddf23c --- /dev/null +++ b/src/bin/lttng-sessiond/trigger-error-accounting.h @@ -0,0 +1,52 @@ +/* + * Copyright (C) 2020 Francis Deslauriers + * + * SPDX-License-Identifier: GPL-2.0-only + * + */ + +#ifndef _TRIGGER_ERROR_ACCOUNTING_H +#define _TRIGGER_ERROR_ACCOUNTING_H + +#include + +#include "ust-app.h" + +enum trigger_error_accounting_status { + TRIGGER_ERROR_ACCOUNTING_STATUS_OK, + TRIGGER_ERROR_ACCOUNTING_STATUS_ERR, + TRIGGER_ERROR_ACCOUNTING_STATUS_NOT_FOUND, + TRIGGER_ERROR_ACCOUNTING_STATUS_NOMEM, + TRIGGER_ERROR_ACCOUNTING_STATUS_NO_INDEX_AVAILABLE, + TRIGGER_ERROR_ACCOUNTING_STATUS_APP_DEAD, +}; + +void trigger_error_accounting_init(uint64_t nb_bucket); + +#ifdef HAVE_LIBLTTNG_UST_CTL +enum trigger_error_accounting_status trigger_error_accounting_register_app( + struct ust_app *app); +#else /* HAVE_LIBLTTNG_UST_CTL */ +static inline +enum trigger_error_accounting_status trigger_error_accounting_register_app( + struct ust_app *app) +{ + return TRIGGER_ERROR_ACCOUNTING_STATUS_OK; +} +#endif /* HAVE_LIBLTTNG_UST_CTL */ + +void trigger_error_accounting_register_kernel(int kernel_fd); + +enum trigger_error_accounting_status trigger_error_accounting_register_trigger( + const struct lttng_trigger *trigger, + uint64_t *error_counter_index); + +enum trigger_error_accounting_status trigger_error_accounting_get_count( + const struct lttng_trigger *trigger, uint64_t *count); + +void trigger_error_accounting_unregister_trigger( + const struct lttng_trigger *trigger); + +void trigger_error_accounting_fini(void); + +#endif /* _TRIGGER_ERROR_ACCOUNTING_H */