All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [Xenomai-core] Xenomai-git Digest, Vol 17, Issue 18
       [not found] <mailman.63.1282557625.26045.xenomai-git@xenomai.org>
@ 2010-08-23 10:32 ` Jan Kiszka
  2010-08-23 11:09   ` Gilles Chanteperdrix
  0 siblings, 1 reply; 2+ messages in thread
From: Jan Kiszka @ 2010-08-23 10:32 UTC (permalink / raw)
  To: Gilles Chanteperdrix; +Cc: xenomai-core

xenomai-git-request@domain.hid wrote:
> Module: xenomai-2.5
> Branch: master
> Commit: edaf1e2e54343b6e4bf5cf6ece9175ec0ab21cad
> URL:    http://git.xenomai.org/?p=xenomai-2.5.git;a=commit;h=edaf1e2e54343b6e4bf5cf6ece9175ec0ab21cad
> 
> Author: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
> Date:   Sun Aug 22 15:37:11 2010 +0200
> 
> Do not assume that XN_NO_HANDLE is NULL
> 
> ---
> 
>  src/skins/common/current.c |    1 +
>  src/skins/native/mutex.c   |    4 ++--
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/src/skins/common/current.c b/src/skins/common/current.c
> index 7f36991..4e75690 100644
> --- a/src/skins/common/current.c
> +++ b/src/skins/common/current.c
> @@ -46,6 +46,7 @@ static inline int create_current_key(void)
>  
>  static inline void __xeno_set_current(xnhandle_t current)
>  {
> +	current = (current == XN_NO_HANDLE ? current : (xnhandle_t)(0));

I think you meant "!=" here.

Jan

>  	pthread_setspecific(xeno_current_key, (void *)current);
>  }
>  
> diff --git a/src/skins/native/mutex.c b/src/skins/native/mutex.c
> index 55d502f..8e2a57c 100644
> --- a/src/skins/native/mutex.c
> +++ b/src/skins/native/mutex.c
> @@ -76,7 +76,7 @@ static int rt_mutex_acquire_inner(RT_MUTEX *mutex, RTIME timeout, xntmode_t mode
>  	xnhandle_t cur;
>  
>  	cur = xeno_get_current();
> -	if (!cur)
> +	if (cur == XN_NO_HANDLE)
>  		return -EPERM;
>  
>  	if (likely(!(xeno_get_current_mode() & XNRELAX))) {
> @@ -140,7 +140,7 @@ int rt_mutex_release(RT_MUTEX *mutex)
>  	xnhandle_t cur;
>  
>  	cur = xeno_get_current();
> -	if (!cur)
> +	if (cur == XN_NO_HANDLE)
>  		return -EPERM;
>  
>  	if (unlikely(xnsynch_fast_owner_check(mutex->fastlock, cur) != 0))
> 

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Xenomai-core] Xenomai-git Digest, Vol 17, Issue 18
  2010-08-23 10:32 ` [Xenomai-core] Xenomai-git Digest, Vol 17, Issue 18 Jan Kiszka
@ 2010-08-23 11:09   ` Gilles Chanteperdrix
  0 siblings, 0 replies; 2+ messages in thread
From: Gilles Chanteperdrix @ 2010-08-23 11:09 UTC (permalink / raw)
  To: Jan Kiszka; +Cc: xenomai-core

Jan Kiszka wrote:
> xenomai-git-request@domain.hid wrote:
>> Module: xenomai-2.5
>> Branch: master
>> Commit: edaf1e2e54343b6e4bf5cf6ece9175ec0ab21cad
>> URL:    http://git.xenomai.org/?p=xenomai-2.5.git;a=commit;h=edaf1e2e54343b6e4bf5cf6ece9175ec0ab21cad
>>
>> Author: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
>> Date:   Sun Aug 22 15:37:11 2010 +0200
>>
>> Do not assume that XN_NO_HANDLE is NULL
>>
>> ---
>>
>>  src/skins/common/current.c |    1 +
>>  src/skins/native/mutex.c   |    4 ++--
>>  2 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/skins/common/current.c b/src/skins/common/current.c
>> index 7f36991..4e75690 100644
>> --- a/src/skins/common/current.c
>> +++ b/src/skins/common/current.c
>> @@ -46,6 +46,7 @@ static inline int create_current_key(void)
>>  
>>  static inline void __xeno_set_current(xnhandle_t current)
>>  {
>> +	current = (current == XN_NO_HANDLE ? current : (xnhandle_t)(0));
> 
> I think you meant "!=" here.

Yes, thanks. The slow version makes it working...

-- 
					    Gilles.


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-08-23 11:09 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <mailman.63.1282557625.26045.xenomai-git@xenomai.org>
2010-08-23 10:32 ` [Xenomai-core] Xenomai-git Digest, Vol 17, Issue 18 Jan Kiszka
2010-08-23 11:09   ` Gilles Chanteperdrix

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.