[lttng-dev] [lttng-ust][PATCH V2] Add config time check for new gettid API

Sebastien Boisvert sboisvert at gydle.com
Fri Jul 26 15:23:44 EDT 2019



On 2019-07-26 3:02 p.m., Khem Raj wrote:
> glibc 2.30 introduced this function see [1]
> so it's best to detect it
> and provide fallback only if its not present

nit:

-if its not present
+if it's not present

I cloned the git repository of the glibc, but I could not find
the definition of gettid().

Do you know where it is located in glibc ?

Thanks.

> 
> [1] https://sourceware.org/bugzilla/show_bug.cgi?id=6399
> 
> Upstream-Status: Submitted [https://lists.lttng.org/pipermail/lttng-dev/2019-July/029131.html]
> 
> Signed-off-by: Khem Raj <raj.khem at gmail.com>
> ---
> v2: Fix typos in commit message
> 
>  configure.ac            | 1 +
>  include/lttng/ust-tid.h | 7 +++++--
>  2 files changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/configure.ac b/configure.ac
> index 7fa059a..b1099c1 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -137,6 +137,7 @@ AC_CHECK_FUNCS([ \
>  	clock_gettime \
>  	ftruncate \
>  	getpagesize \
> +	gettid \
>  	gettimeofday \
>  	localeconv \
>  	memchr \
> diff --git a/include/lttng/ust-tid.h b/include/lttng/ust-tid.h
> index e669d7e..7995c78 100644
> --- a/include/lttng/ust-tid.h
> +++ b/include/lttng/ust-tid.h
> @@ -26,7 +26,10 @@
>   * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
>   * SOFTWARE.
>   */
> -
> +#include <config.h>
> +#if HAVE_GETTID
> +#include <unistd.h>
> +#else
>  #ifdef __linux__
>  #include <syscall.h>
>  #endif
> @@ -49,5 +52,5 @@ static inline pid_t gettid(void)
>  	return getpid();
>  }
>  #endif
> -
> +#endif /* HAVE_GETTID */
>  #endif /* _LTTNG_UST_TID_H */
> 


More information about the lttng-dev mailing list