Le 15/01/2020 à 17:18, Arnd Bergmann a écrit :
> On Wed, Jan 15, 2020 at 4:53 PM Filip Bozuta <filip.boz...@rt-rk.com> wrote:
>>
>> This patch implements functionality of following ioctl:
>>
>> SNDRV_TIMER_IOCTL_TREAD - Setting enhanced time read
>>
>>     Sets enhanced time read which is used for reading time with timestamps
>>     and events. The third ioctl's argument is a pointer to an 'int'. Enhanced
>>     reading is set if the third argument is different than 0, otherwise 
>> normal
>>     time reading is set.
>>
>> Implementation notes:
>>
>>     Because the implemented ioctl has 'int' as its third argument, the
>>     implementation was straightforward.
>>
>> Signed-off-by: Filip Bozuta <filip.boz...@rt-rk.com>
> 
> I think this one is wrong when you go between 32-bit and 64-bit

kernel uses an "int" and "int" is always 32bit.
The problem is most likely with timespec I think.

> targets, and it gets worse with the kernel patches that just got
> merged for linux-5.5, which extends the behavior to deal with
> 64-bit time_t on 32-bit architectures.
> 
> Please have a look at
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/log/?h=80fe7430c70859
> 
>        Arnd
> 

Yes, we already had the same kind of problem with SIOCGSTAMP and
SIOCGSTAMPNS.

Do the kernel patches add new ioctl numbers to differentiate 32bit and
64bit time_t?

Thanks,
Laurent

Reply via email to