X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=libust%2Ftracercore.h;h=2f3d7c4a3b9fc93c9a85e6eac544a889f00947c8;hb=b102c2b0b07a155285716d9f7fd788662cecd54b;hp=79c2dbf9d3635f134dcb893154b9f5509e31f580;hpb=7ab550044c6f0f202c2c0b35f869bfd4afd7efbc;p=ust.git diff --git a/libust/tracercore.h b/libust/tracercore.h index 79c2dbf..2f3d7c4 100644 --- a/libust/tracercore.h +++ b/libust/tracercore.h @@ -42,8 +42,7 @@ struct ltt_traces { extern struct ltt_traces ltt_traces; /* Keep track of trap nesting inside LTT */ -//ust// DECLARE_PER_CPU(unsigned int, ltt_nesting); -extern unsigned int ltt_nesting; +extern __thread int ltt_nesting; typedef int (*ltt_run_filter_functor)(void *trace, uint16_t eID); //typedef int (*ltt_run_filter_functor)(void *, __u16); @@ -61,7 +60,8 @@ extern void ltt_filter_unregister(void); */ static inline unsigned int ltt_align(size_t align_drift, size_t size_of_type) { - return (size_of_type - align_drift) & (size_of_type - 1); + size_t alignment = min(sizeof(void *), size_of_type); + return (alignment - align_drift) & (alignment - 1); } /* Default arch alignment */ #define LTT_ALIGN