X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=include%2Flttng%2Fkernel-probe-internal.h;h=2d2ab86844472a836aa474adaa3650857be9d2c7;hp=2a655fb806b3259cb8d4a03553a6d439e22feff2;hb=HEAD;hpb=6a751b953a43c566b74818ec6325db0978e16c66 diff --git a/include/lttng/kernel-probe-internal.h b/include/lttng/kernel-probe-internal.h deleted file mode 100644 index 2a655fb80..000000000 --- a/include/lttng/kernel-probe-internal.h +++ /dev/null @@ -1,115 +0,0 @@ -/* - * Copyright (C) 2020 Jonathan Rajotte - * - * SPDX-License-Identifier: LGPL-2.1-only - * - */ - -#ifndef LTTNG_KERNEL_PROBE_INTERNAL_H -#define LTTNG_KERNEL_PROBE_INTERNAL_H - -#include -#include -#include -#include -#include -#include - -struct lttng_payload; -struct lttng_payload_view; -struct lttng_dynamic_buffer; -struct mi_writer; - -typedef bool (*kernel_probe_location_equal_cb)( - const struct lttng_kernel_probe_location *a, - const struct lttng_kernel_probe_location *b); -typedef int (*kernel_probe_location_serialize_cb)( - const struct lttng_kernel_probe_location *kernel_probe_location, - struct lttng_payload *payload); -typedef bool (*kernel_probe_location_equal_cb)( - const struct lttng_kernel_probe_location *a, - const struct lttng_kernel_probe_location *b); -typedef ssize_t (*kernel_probe_location_create_from_payload_cb)( - struct lttng_payload_view *view, - struct lttng_kernel_probe_location **kernel_probe_location); -typedef unsigned long (*kernel_probe_location_hash_cb)( - const struct lttng_kernel_probe_location *location); -typedef enum lttng_error_code (*kernel_probe_location_mi_serialize_cb)( - const struct lttng_kernel_probe_location *location, - struct mi_writer *writer); - -struct lttng_kernel_probe_location_comm { - /* enum lttng_kernel_probe_location_type */ - int8_t type; - /* - * Payload is composed of, in that order, - * - type-specific payload - */ - char payload[]; -} LTTNG_PACKED; - -struct lttng_kernel_probe_location_symbol_comm { - /* Includes the trailing \0. */ - uint32_t symbol_len; - /* The offset from the symbol. */ - uint64_t offset; - /* - * Payload is composed of, in that order, - * - symbol name (with trailing \0). - */ - char payload[]; -} LTTNG_PACKED; - -struct lttng_kernel_probe_location_address_comm { - uint64_t address; -} LTTNG_PACKED; - -/* Common ancestor of all kernel probe locations. */ -struct lttng_kernel_probe_location { - enum lttng_kernel_probe_location_type type; - kernel_probe_location_equal_cb equal; - kernel_probe_location_serialize_cb serialize; - kernel_probe_location_hash_cb hash; - kernel_probe_location_mi_serialize_cb mi_serialize; -}; - -struct lttng_kernel_probe_location_symbol { - struct lttng_kernel_probe_location parent; - char *symbol_name; - uint64_t offset; -}; - -struct lttng_kernel_probe_location_address { - struct lttng_kernel_probe_location parent; - uint64_t address; -}; - -LTTNG_HIDDEN -int lttng_kernel_probe_location_serialize( - const struct lttng_kernel_probe_location *location, - struct lttng_payload *payload); - -LTTNG_HIDDEN -ssize_t lttng_kernel_probe_location_create_from_payload( - struct lttng_payload_view *view, - struct lttng_kernel_probe_location **probe_location); - -LTTNG_HIDDEN -bool lttng_kernel_probe_location_is_equal( - const struct lttng_kernel_probe_location *a, - const struct lttng_kernel_probe_location *b); - -LTTNG_HIDDEN -struct lttng_kernel_probe_location *lttng_kernel_probe_location_copy( - const struct lttng_kernel_probe_location *location); - -LTTNG_HIDDEN -unsigned long lttng_kernel_probe_location_hash( - const struct lttng_kernel_probe_location *location); - -LTTNG_HIDDEN -enum lttng_error_code lttng_kernel_probe_location_mi_serialize( - const struct lttng_kernel_probe_location *location, - struct mi_writer *writer); - -#endif /* LTTNG_KERNEL_PROBE_INTERNAL_H */