lkml.org 
[lkml]   [2021]   [Apr]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [patch 3/6] futex: Get rid of the val2 conditional dance
From
Date
Às 19:34 de 23/04/21, Thomas Gleixner escreveu:
> On Fri, Apr 23 2021 at 18:40, André Almeida wrote:
>>>
>>> - return do_futex(uaddr, op, val, tp, uaddr2, val2, val3);
>>> + return do_futex(uaddr, op, val, tp, uaddr2, (unsigned long)utime, val3);
>>
>> Given do_futex()'s type signature, I think it makes more sense to cast
>> utime to u32.
>
> It's a pointer which you better force cast to unsigned long first.
>
> So the explicit thing would be '(u32)(unsigned long) utime' which is
> what the val2 dance stupidly did with 'int'
>
> val2 = (int) (unsigned long) utime;
>
> But with doing it at function call argument it's implicit, because the
>
> unsigned long to u32 conversion is well defined
>
> while
>
> (u32)ptr
>
> is only well defined on 32bit.
>

I see, thank you for the clarification!

> Thanks,
>
> tglx
>

\
 
 \ /
  Last update: 2021-04-24 01:22    [W:0.489 / U:0.000 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site