Version 2.8.5
[lttng-modules.git] / lttng-events.h
index 1b4f39c40ce22060e068f13bf31754acc738faeb..2185571f56ae25770d0127da54fe903aa66b8a16 100644 (file)
 #include <linux/list.h>
 #include <linux/kprobes.h>
 #include <linux/kref.h>
-#include "wrapper/uuid.h"
-#include "lttng-abi.h"
-#include "lttng-abi-old.h"
+#include <lttng-cpuhotplug.h>
+#include <wrapper/uuid.h>
+#include <lttng-abi.h>
+#include <lttng-abi-old.h>
 
 #define lttng_is_signed_type(type)     (((type)(-1)) < 0)
 
@@ -43,7 +44,6 @@ struct lib_ring_buffer_config;
 
 /* Type description */
 
-/* Update the astract_types name table in lttng-types.c along with this enum */
 enum abstract_types {
        atype_integer,
        atype_enum,
@@ -53,7 +53,6 @@ enum abstract_types {
        NR_ABSTRACT_TYPES,
 };
 
-/* Update the string_encodings name table in lttng-types.c along with this enum */
 enum lttng_string_encodings {
        lttng_encode_none = 0,
        lttng_encode_UTF8 = 1,
@@ -156,8 +155,13 @@ union lttng_ctx_value {
  * lttng_ctx_field because cpu hotplug needs fixed-location addresses.
  */
 struct lttng_perf_counter_field {
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0))
+       struct lttng_cpuhp_node cpuhp_prepare;
+       struct lttng_cpuhp_node cpuhp_online;
+#else
        struct notifier_block nb;
        int hp_enable;
+#endif
        struct perf_event_attr *attr;
        struct perf_event **e;  /* per-cpu array */
 };
@@ -662,6 +666,10 @@ int lttng_add_perf_counter_to_ctx(uint32_t type,
                                  uint64_t config,
                                  const char *name,
                                  struct lttng_ctx **ctx);
+int lttng_cpuhp_perf_counter_online(unsigned int cpu,
+               struct lttng_cpuhp_node *node);
+int lttng_cpuhp_perf_counter_dead(unsigned int cpu,
+               struct lttng_cpuhp_node *node);
 #else
 static inline
 int lttng_add_perf_counter_to_ctx(uint32_t type,
@@ -671,6 +679,18 @@ int lttng_add_perf_counter_to_ctx(uint32_t type,
 {
        return -ENOSYS;
 }
+static inline
+int lttng_cpuhp_perf_counter_online(unsigned int cpu,
+               struct lttng_cpuhp_node *node)
+{
+       return 0;
+}
+static inline
+int lttng_cpuhp_perf_counter_dead(unsigned int cpu,
+               struct lttng_cpuhp_node *node)
+{
+       return 0;
+}
 #endif
 
 int lttng_logger_init(void);
This page took 0.026908 seconds and 4 git commands to generate.