[ltt-dev] [UST PATCH] Fixes container_of macro redefinition warnings

Mathieu Desnoyers compudj at krystal.dyndns.org
Wed Sep 22 17:25:26 EDT 2010


* David Goulet (david.goulet at polymtl.ca) wrote:
> On urcu commit 453629a9317adef5b96c3d55e4dcd98db680997a, the
> container_of macro was moved to urcu/compiler.h. Since, multiple
> warnings appear about redefinition
> 
> Signed-off-by: David Goulet <david.goulet at polymtl.ca>

Acked-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>

> ---
>  include/ust/core.h           |    2 ++
>  include/ust/kcompat/simple.h |    3 ++-
>  2 files changed, 4 insertions(+), 1 deletions(-)
> 
> diff --git a/include/ust/core.h b/include/ust/core.h
> index 0172614..d5a1f4d 100644
> --- a/include/ust/core.h
> +++ b/include/ust/core.h
> @@ -141,8 +141,10 @@ static __inline__ int get_count_order(unsigned int count)
>  	return order;
>  }
>  
> +#ifndef container_of
>  #define container_of(ptr, type, member) ({                      \
>          const typeof( ((type *)0)->member ) *__mptr = (ptr);    \
>          (type *)( (char *)__mptr - offsetof(type,member) );})
> +#endif /* containter_of */
>  
>  #endif /* UST_CORE_H */
> diff --git a/include/ust/kcompat/simple.h b/include/ust/kcompat/simple.h
> index 762d802..586b2ed 100644
> --- a/include/ust/kcompat/simple.h
> +++ b/include/ust/kcompat/simple.h
> @@ -28,10 +28,11 @@
>   * @member:	the name of the member within the struct.
>   *
>   */
> +#ifndef container_of
>  #define container_of(ptr, type, member) ({			\
>  	const typeof( ((type *)0)->member ) *__mptr = (ptr);	\
>  	(type *)( (char *)__mptr - offsetof(type,member) );})
> -
> +#endif /* container_of */
>  
>  /* libkcompat: from rcupdate.h */
>  
> -- 
> 1.7.3
> 
> 
> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
> 

-- 
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com




More information about the lttng-dev mailing list