2 * SPDX-License-Identifier: LGPL-2.1-only
4 * Copyright (C) 2011-2012 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
7 #ifndef _LIBCOUNTER_SMP_H
8 #define _LIBCOUNTER_SMP_H
11 * 4kB of per-cpu data available.
13 #define LTTNG_COUNTER_PER_CPU_MEM_SIZE 4096
15 __attribute__((visibility("hidden")))
16 extern int __lttng_counter_num_possible_cpus
;
18 __attribute__((visibility("hidden")))
19 extern void _lttng_counter_get_num_possible_cpus(void);
22 int lttng_counter_num_possible_cpus(void)
24 if (!__lttng_counter_num_possible_cpus
)
25 _lttng_counter_get_num_possible_cpus();
26 return __lttng_counter_num_possible_cpus
;
29 #define lttng_counter_for_each_possible_cpu(cpu) \
30 for ((cpu) = 0; (cpu) < lttng_counter_num_possible_cpus(); (cpu)++)
32 #endif /* _LIBCOUNTER_SMP_H */