~lttng/urcu/trunk

« back to all changes in this revision

Viewing changes to urcu/map/urcu-bp.h

  • Committer: Mathieu Desnoyers
  • Author(s): Michael Jeanson
  • Date: 2016-06-27 20:19:42 UTC
  • Revision ID: git-v1:6893800a4d1cc14dff0395ddcd660a5138db183d
Cleanup: Re-organise source dir

Re-organise the sources, add a top level "src" and "include" dir and
move relevant files.

Disable autotools automated includes and define them manually. This
fixes problems with collision of header names with system headers.

Include the autoconf config.h in the default includes and remove it
where it's explicitely included. Remove _GNU_SOURCE defines since
it's detected at configure for platforms that requires it and added
to the config.h.

Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef _URCU_BP_MAP_H
2
 
#define _URCU_BP_MAP_H
3
 
 
4
 
/*
5
 
 * urcu-map.h
6
 
 *
7
 
 * Userspace RCU header -- name mapping to allow multiple flavors to be
8
 
 * used in the same executable.
9
 
 *
10
 
 * Copyright (c) 2009 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
11
 
 * Copyright (c) 2009 Paul E. McKenney, IBM Corporation.
12
 
 *
13
 
 * LGPL-compatible code should include this header with :
14
 
 *
15
 
 * #define _LGPL_SOURCE
16
 
 * #include <urcu.h>
17
 
 *
18
 
 * This library is free software; you can redistribute it and/or
19
 
 * modify it under the terms of the GNU Lesser General Public
20
 
 * License as published by the Free Software Foundation; either
21
 
 * version 2.1 of the License, or (at your option) any later version.
22
 
 *
23
 
 * This library is distributed in the hope that it will be useful,
24
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
25
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
26
 
 * Lesser General Public License for more details.
27
 
 *
28
 
 * You should have received a copy of the GNU Lesser General Public
29
 
 * License along with this library; if not, write to the Free Software
30
 
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
31
 
 *
32
 
 * IBM's contributions to this file may be relicensed under LGPLv2 or later.
33
 
 */
34
 
 
35
 
/* Mapping macros to allow multiple flavors in a single binary. */
36
 
 
37
 
#define rcu_read_lock                   rcu_read_lock_bp
38
 
#define _rcu_read_lock                  _rcu_read_lock_bp
39
 
#define rcu_read_unlock                 rcu_read_unlock_bp
40
 
#define _rcu_read_unlock                _rcu_read_unlock_bp
41
 
#define rcu_read_ongoing                rcu_read_ongoing_bp
42
 
#define _rcu_read_ongoing               _rcu_read_ongoing_bp
43
 
#define rcu_register_thread             rcu_register_thread_bp
44
 
#define rcu_unregister_thread           rcu_unregister_thread_bp
45
 
#define rcu_init                        rcu_init_bp
46
 
#define rcu_exit                        rcu_exit_bp
47
 
#define synchronize_rcu                 synchronize_rcu_bp
48
 
#define rcu_reader                      rcu_reader_bp
49
 
#define rcu_gp                          rcu_gp_bp
50
 
 
51
 
#define get_cpu_call_rcu_data           get_cpu_call_rcu_data_bp
52
 
#define get_call_rcu_thread             get_call_rcu_thread_bp
53
 
#define create_call_rcu_data            create_call_rcu_data_bp
54
 
#define set_cpu_call_rcu_data           set_cpu_call_rcu_data_bp
55
 
#define get_default_call_rcu_data       get_default_call_rcu_data_bp
56
 
#define get_call_rcu_data               get_call_rcu_data_bp
57
 
#define get_thread_call_rcu_data        get_thread_call_rcu_data_bp
58
 
#define set_thread_call_rcu_data        set_thread_call_rcu_data_bp
59
 
#define create_all_cpu_call_rcu_data    create_all_cpu_call_rcu_data_bp
60
 
#define free_all_cpu_call_rcu_data      free_all_cpu_call_rcu_data_bp
61
 
#define call_rcu                        call_rcu_bp
62
 
#define call_rcu_data_free              call_rcu_data_free_bp
63
 
#define call_rcu_before_fork            call_rcu_before_fork_bp
64
 
#define call_rcu_after_fork_parent      call_rcu_after_fork_parent_bp
65
 
#define call_rcu_after_fork_child       call_rcu_after_fork_child_bp
66
 
#define rcu_barrier                     rcu_barrier_bp
67
 
 
68
 
#define defer_rcu                       defer_rcu_bp
69
 
#define rcu_defer_register_thread       rcu_defer_register_thread_bp
70
 
#define rcu_defer_unregister_thread     rcu_defer_unregister_thread_bp
71
 
#define rcu_defer_barrier               rcu_defer_barrier_bp
72
 
#define rcu_defer_barrier_thread        rcu_defer_barrier_thread_bp
73
 
#define rcu_defer_exit                  rcu_defer_exit_bp
74
 
 
75
 
#define rcu_flavor                      rcu_flavor_bp
76
 
 
77
 
#define rcu_yield_active                rcu_yield_active_bp
78
 
#define rcu_rand_yield                  rcu_rand_yield_bp
79
 
 
80
 
#endif /* _URCU_BP_MAP_H */