[ltt-dev] [PATCH 7/6] api: adjust license

Mathieu Desnoyers compudj at krystal.dyndns.org
Tue Aug 16 06:36:42 EDT 2011


* Paolo Bonzini (pbonzini at redhat.com) wrote:
> On 08/13/2011 12:30 AM, Mathieu Desnoyers wrote:
> >> The Linux kernel code is probably not copyrightable anymore.
> > What do you mean ? If there is still code taken from the Linux kernel in
> > this api.h test file, we need to keep the licensing comment as-is.
> 
> The only part that has some similarity with Linux kernel code is
> the per-thread variables:

I guess I'll have to let Paul answer this one. Paul ?

Thanks,

Mathieu

> 
> #define DEFINE_PER_THREAD(type, name) \
>         struct { \
>                 __typeof__(type) v \
>                         __attribute__((__aligned__(CAA_CACHE_LINE_SIZE))); \
>         } __per_thread_##name[NR_THREADS];
> #define DECLARE_PER_THREAD(type, name) extern DEFINE_PER_THREAD(type, name)
> 
> #define per_thread(name, thread) __per_thread_##name[thread].v
> #define __get_thread_var(name) per_thread(name, smp_thread_id())
> 
> #define init_per_thread(name, v) \
>         do { \
>                 int __i_p_t_i; \
>                 for (__i_p_t_i = 0; __i_p_t_i < NR_THREADS; __i_p_t_i++) \
>                         per_thread(name, __i_p_t_i) = v; \
>         } while (0)
> 
> DEFINE_PER_THREAD(int, smp_processor_id);
> 
> This is very similar to the per-cpu code.  But there is really just one
> way to write this code.
> 
> Paolo
> 

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




More information about the lttng-dev mailing list