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 extern int __lttng_counter_num_possible_cpus
16 __attribute__((visibility("hidden")));
18 extern void _lttng_counter_get_num_possible_cpus(void)
19 __attribute__((visibility("hidden")));
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 */