[ltt-dev] [PATCH 5/6] api: move useful parts to compiler.h

Mathieu Desnoyers compudj at krystal.dyndns.org
Fri Aug 12 18:28:21 EDT 2011


* Paolo Bonzini (pbonzini at redhat.com) wrote:
> ---
>  tests/api.h     |   14 +-------------
>  urcu/compiler.h |   11 +++++++++++
>  2 files changed, 12 insertions(+), 13 deletions(-)
> 
> diff --git a/tests/api.h b/tests/api.h
> index e36a570..dcd76f7 100644
> --- a/tests/api.h
> +++ b/tests/api.h
> @@ -27,21 +27,9 @@
>   * to redistribute under later versions of GPL might not be available.
>   */
>  
> +#include <urcu/compiler.h>
>  #include <urcu/arch.h>
>  
> -#ifndef __always_inline
> -#define __always_inline inline
> -#endif
> -
> -#define BUILD_BUG_ON(condition) ((void)sizeof(char[1 - 2*!!(condition)]))
> -#define BUILD_BUG_ON_ZERO(e) (sizeof(char[1 - 2 * !!(e)]) - 1)
> -
> -/* This version of stringify will deal with commas... */
> -#define __stringify_in_c(...) #__VA_ARGS__
> -#define stringify_in_c(...)   __stringify_in_c(__VA_ARGS__) " "
> -#define __ASM_CONST(x)        x##UL
> -#define ASM_CONST(x)          __ASM_CONST(x)
> -
>  
>  /*
>   * Machine parameters.
> diff --git a/urcu/compiler.h b/urcu/compiler.h
> index 54904cc..5b5a1e8 100644
> --- a/urcu/compiler.h
> +++ b/urcu/compiler.h
> @@ -61,4 +61,15 @@
>  		(type *)((char *)__ptr - offsetof(type, member));	\
>  	})
>  
> +#ifndef __always_inline
> +#define __always_inline inline
> +#endif
> +

The patch title says "move" here. We need to "reimplement" these under
the MIT-style license of comiler.h. We cannot just copy from a GPLv2
file into a MIT-licensed file.

Thanks,

Mathieu

> +#define CAA_BUILD_BUG_ON(condition) ((void)sizeof(char[1 - 2*!!(condition)]))
> +#define CAA_BUILD_BUG_ON_ZERO(e) (sizeof(char[1 - 2 * !!(e)]) - 1)
> +
> +/* This version of stringify will deal with commas... */
> +#define __caa_stringify_in_c(...) #__VA_ARGS__
> +#define caa_stringify_in_c(...)   __caa_stringify_in_c(__VA_ARGS__) " "
> +
>  #endif /* _URCU_COMPILER_H */
> -- 
> 1.7.6
> 
> 
> 
> _______________________________________________
> 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