38eae489788b5eed0c6a28cec054c8fd7c931ae6
[lttng-ust.git] / libcounter / smp.h
1 /*
2 * SPDX-License-Identifier: LGPL-2.1-only
3 *
4 * Copyright (C) 2011-2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
5 */
6
7 #ifndef _LIBCOUNTER_SMP_H
8 #define _LIBCOUNTER_SMP_H
9
10 /*
11 * 4kB of per-cpu data available.
12 */
13 #define LTTNG_COUNTER_PER_CPU_MEM_SIZE 4096
14
15 extern int __lttng_counter_num_possible_cpus
16 __attribute__((visibility("hidden")));
17
18 extern void _lttng_counter_get_num_possible_cpus(void)
19 __attribute__((visibility("hidden")));
20
21 static inline
22 int lttng_counter_num_possible_cpus(void)
23 {
24 if (!__lttng_counter_num_possible_cpus)
25 _lttng_counter_get_num_possible_cpus();
26 return __lttng_counter_num_possible_cpus;
27 }
28
29 #define lttng_counter_for_each_possible_cpu(cpu) \
30 for ((cpu) = 0; (cpu) < lttng_counter_num_possible_cpus(); (cpu)++)
31
32 #endif /* _LIBCOUNTER_SMP_H */
This page took 0.029595 seconds and 3 git commands to generate.