X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fmacros.h;h=43a4d692b80fbad0a5a42f03f2ceffc3450c63a1;hb=c9753f7250f33184a1859088a691291f37161f25;hp=af9cb7e19bca6ac8eb632e2a5b6941d04aff285c;hpb=411b31544f22b773b4aad6cdb81faa81dc05e641;p=lttng-tools.git diff --git a/src/common/macros.h b/src/common/macros.h index af9cb7e19..43a4d692b 100644 --- a/src/common/macros.h +++ b/src/common/macros.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2011 David Goulet + * Copyright (C) 2011 EfficiOS Inc. * Copyright (C) 2011 Mathieu Desnoyers * * SPDX-License-Identifier: GPL-2.0-only @@ -74,6 +74,7 @@ void *zmalloc(size_t len) #define member_sizeof(type, field) sizeof(((type *) 0)->field) #define ASSERT_LOCKED(lock) LTTNG_ASSERT(pthread_mutex_trylock(&lock)) +#define ASSERT_RCU_READ_LOCKED(lock) LTTNG_ASSERT(rcu_read_ongoing()) /* Attribute suitable to tag functions as having printf()-like arguments. */ #define ATTR_FORMAT_PRINTF(_string_index, _first_to_check) \ @@ -101,6 +102,13 @@ void *zmalloc(size_t len) _Pragma("GCC diagnostic ignored \"-Wformat-nonliteral\"") #endif +/* Used to make specific C++ functions to C code. */ +#ifdef __cplusplus +#define C_LINKAGE extern "C" +#else +#define C_LINKAGE +#endif + /* * lttng_strncpy returns 0 on success, or nonzero on failure. * It checks that the @src string fits into @dst_len before performing