[ltt-dev] [PATCH] Lib urcu commit 453629a9317adef5b96c3d55e4dcd98db680997a moved container_of definition to urcu/compiler.h Since, multiple warnings about redefinition of container_of appears.

David Goulet david.goulet at polymtl.ca
Mon Aug 16 08:52:08 EDT 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1



On 10-08-16 12:24 AM, Mathieu Desnoyers wrote:
> * David Goulet (david.goulet at polymtl.ca) wrote:
>> Removed macro definition from ust core header and kcompat.
>> Now using lib urcu macro definition which is the same.
> 
> Hrm, there is a dependency on the latest unreleased urcu git head.
> 
> To make the transition easier, please wrap it into a
> 
> #ifndef container_of
> ...
> #endif
> 
> instead of removing it from ust.

Right. Quite "smoother" that way!

Should we wait until the next urcu release ?

David

> 
> Thanks,
> 
> Mathieu
> 
>>
>> Signed-off-by: David Goulet <david.goulet at polymtl.ca>
>> ---
>>  include/ust/core.h           |    4 ----
>>  include/ust/kcompat/simple.h |   12 ------------
>>  2 files changed, 0 insertions(+), 16 deletions(-)
>>
>> diff --git a/include/ust/core.h b/include/ust/core.h
>> index 0172614..b538e81 100644
>> --- a/include/ust/core.h
>> +++ b/include/ust/core.h
>> @@ -141,8 +141,4 @@ static __inline__ int get_count_order(unsigned int count)
>>  	return order;
>>  }
>>  
>> -#define container_of(ptr, type, member) ({                      \
>> -        const typeof( ((type *)0)->member ) *__mptr = (ptr);    \
>> -        (type *)( (char *)__mptr - offsetof(type,member) );})
>> -
>>  #endif /* UST_CORE_H */
>> diff --git a/include/ust/kcompat/simple.h b/include/ust/kcompat/simple.h
>> index 762d802..38a9be5 100644
>> --- a/include/ust/kcompat/simple.h
>> +++ b/include/ust/kcompat/simple.h
>> @@ -21,18 +21,6 @@
>>  #ifndef KCOMPAT_SIMPLE_H
>>  #define KCOMPAT_SIMPLE_H
>>  
>> -/**
>> - * container_of - cast a member of a structure out to the containing structure
>> - * @ptr:	the pointer to the member.
>> - * @type:	the type of the container struct this is embedded in.
>> - * @member:	the name of the member within the struct.
>> - *
>> - */
>> -#define container_of(ptr, type, member) ({			\
>> -	const typeof( ((type *)0)->member ) *__mptr = (ptr);	\
>> -	(type *)( (char *)__mptr - offsetof(type,member) );})
>> -
>> -
>>  /* libkcompat: from rcupdate.h */
>>  
>>  struct rcu_head {
>> -- 
>> 1.7.0.4
>>
> 

- -- 
David Goulet
LTTng project, DORSAL Lab.

1024D/16BD8563
BE3C 672B 9331 9796 291A  14C6 4AF7 C14B 16BD 8563
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAkxpNHgACgkQSvfBSxa9hWP1QQCgoo8nkCcqKjri6V8c4QVcGhsR
YcEAn1YVUJWGF8MSU8h+G8h5Vmopcj24
=RkHi
-----END PGP SIGNATURE-----




More information about the lttng-dev mailing list