Move to kernel style SPDX license identifiers
[lttng-ust.git] / include / lttng / tracepoint-rcu.h
CommitLineData
40b2b5a4 1/*
c0c0989a 2 * SPDX-License-Identifier: MIT
40b2b5a4 3 *
c0c0989a 4 * Copyright (C) 2011-2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
40b2b5a4
MD
5 */
6
c0c0989a
MJ
7#ifndef _LTTNG_TRACEPOINT_RCU_H
8#define _LTTNG_TRACEPOINT_RCU_H
9
40b2b5a4 10#include <urcu/compiler.h>
10544ee8 11#include <lttng/urcu/pointer.h>
40b2b5a4
MD
12
13#ifdef _LGPL_SOURCE
14
10544ee8 15#include <lttng/urcu/urcu-ust.h>
40b2b5a4 16
10544ee8
MD
17#define tp_rcu_read_lock lttng_ust_urcu_read_lock
18#define tp_rcu_read_unlock lttng_ust_urcu_read_unlock
19#define tp_rcu_dereference lttng_ust_rcu_dereference
51920067 20#define TP_RCU_LINK_TEST() 1
40b2b5a4
MD
21
22#else /* _LGPL_SOURCE */
23
10544ee8
MD
24#define tp_rcu_read_lock tracepoint_dlopen_ptr->rcu_read_lock_sym
25#define tp_rcu_read_unlock tracepoint_dlopen_ptr->rcu_read_unlock_sym
40b2b5a4 26
10544ee8 27#define tp_rcu_dereference(p) \
4d3b06fe 28 URCU_FORCE_CAST(__typeof__(p), \
10544ee8 29 tracepoint_dlopen_ptr->rcu_dereference_sym(URCU_FORCE_CAST(void *, p)))
40b2b5a4 30
10544ee8 31#define TP_RCU_LINK_TEST() (tracepoint_dlopen_ptr && tp_rcu_read_lock)
51920067 32
40b2b5a4
MD
33#endif /* _LGPL_SOURCE */
34
35#endif /* _LTTNG_TRACEPOINT_RCU_H */
This page took 0.029031 seconds and 4 git commands to generate.