Re: Compile warning rtmutex code on 2.6.24.7-rt8 (CC:LKML added)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Steven,

> Remy,
> Can you see if this helps,

Yes, this helps. Looks a little weird to add bitmasks to pointers, but
I understand why it has been done here.
BTW: I notice that you already has put it in -rt9.

And some other positive news: 2.6.24.7-rt9 compiles and boots
perfectly on ARM at91sam9261. (There are still a few other warnings,
but these are not RT related)

Now I understood your hint in some other mail, and I am going to take
a look at ftrace for ARM. Just for the fun of it...
I hope it is not too intrusive for these ARM cores (old implementation
was...), these Atmel cores are just not that fast as the common X86's.


Kind Regards,

Remy


2008/5/20 Steven Rostedt <rostedt@xxxxxxxxxxx>:
>
>
> On Tue, 20 May 2008, Remy Bohmer wrote:
>
>> Hello Steven,
>>
>>  Do you recognise these warnings? I do not know (yet) if these are ARM
>>  specific...
>>
>>   CC      kernel/rtmutex.o
>>  kernel/rtmutex.c: In function 'rt_write_fastlock':
>>  kernel/rtmutex.c:1582: warning: initialization makes pointer from
>>  integer without a cast
>>  kernel/rtmutex.c: In function 'rt_write_fasttrylock':
>>  kernel/rtmutex.c:1622: warning: initialization makes pointer from
>>  integer without a cast
>>
>>  If so, do you have a fix for it?
>
> Remy,
>
> Can you see if this helps,
>
> Signed-off-by: Steven Rostedt <srostedt@xxxxxxxxxx>
>
> ---
>  kernel/rtmutex.c |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> Index: linux-2.6.24.7-rt9/kernel/rtmutex.c
> ===================================================================
> --- linux-2.6.24.7-rt9.orig/kernel/rtmutex.c    2008-05-20 17:11:29.000000000 -0400
> +++ linux-2.6.24.7-rt9/kernel/rtmutex.c 2008-05-20 17:13:18.000000000 -0400
> @@ -1577,7 +1577,7 @@ rt_write_fastlock(struct rw_mutex *rwm,
>                  void fastcall (*slowfn)(struct rw_mutex *rwm, int mtx),
>                  int mtx)
>  {
> -       unsigned long val = (unsigned long)current | RT_RWLOCK_WRITER;
> +       struct task_struct *val = (void *)((unsigned long)current | RT_RWLOCK_WRITER);
>
>        if (likely(rt_rwlock_cmpxchg(rwm, NULL, val)))
>                rt_mutex_deadlock_account_lock(&rwm->mutex, current);
> @@ -1617,7 +1617,7 @@ static inline int
>  rt_write_fasttrylock(struct rw_mutex *rwm,
>                     int fastcall (*slowfn)(struct rw_mutex *rwm, int mtx), int mtx)
>  {
> -       unsigned long val = (unsigned long)current | RT_RWLOCK_WRITER;
> +       struct task_struct *val = (void *)((unsigned long)current | RT_RWLOCK_WRITER);
>
>        if (likely(rt_rwlock_cmpxchg(rwm, NULL, val))) {
>                rt_mutex_deadlock_account_lock(&rwm->mutex, current);
> @@ -1902,7 +1902,7 @@ rt_write_fastunlock(struct rw_mutex *rwm
>                                            int mtx),
>                    int mtx)
>  {
> -       unsigned long val = (unsigned long)current | RT_RWLOCK_WRITER;
> +       struct task_struct *val = (void *)((unsigned long)current | RT_RWLOCK_WRITER);
>
>        WARN_ON(rt_rwlock_owner(rwm) != current);
>        if (likely(rt_rwlock_cmpxchg(rwm, (struct task_struct *)val, NULL)))
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux