Re: [PATCH 3/5] s390: Fix vDSO clock_getres()

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

 



On 03/04/2019 11:06, Thomas Gleixner wrote:
> On Wed, 3 Apr 2019, Martin Schwidefsky wrote:
> 
>> On Mon,  1 Apr 2019 12:51:50 +0100
>> Vincenzo Frascino <vincenzo.frascino@xxxxxxx> wrote:
>>
>>> clock_getres in the vDSO library has to preserve the same behaviour
>>> of posix_get_hrtimer_res().
>>>
>>> In particular, posix_get_hrtimer_res() does:
>>>     sec = 0;
>>>     ns = hrtimer_resolution;
>>> and hrtimer_resolution depends on the enablement of the high
>>> resolution timers that can happen either at compile or at run time.
>>>
>>> Fix the s390 vdso implementation of clock_getres keeping a copy of
>>> hrtimer_resolution in vdso data and using that directly.
>>>
>>> Cc: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
>>> Cc: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
>>> Signed-off-by: Vincenzo Frascino <vincenzo.frascino@xxxxxxx>
>>> ---
>>>  arch/s390/include/asm/vdso.h           |  1 +
>>>  arch/s390/kernel/asm-offsets.c         |  2 +-
>>>  arch/s390/kernel/time.c                |  1 +
>>>  arch/s390/kernel/vdso32/clock_getres.S | 17 ++++++++++++-----
>>>  arch/s390/kernel/vdso64/clock_getres.S | 15 ++++++++++-----
>>>  5 files changed, 25 insertions(+), 11 deletions(-)
>>
>> I tried this patch and in principle this works. In that regard
>> Acked-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
>>
>> But I wonder if the loop to check the update counter is really
>> necessary. The hrtimer_resolution value can only changes once with
>> the first call to hrtimer_switch_to_hres(). With the TOD clock
>> as the only clock available on s390 we always have the ability
>> to do hrtimer. It then all depends on the highres=[on|off] kernel
>> parameter what value we get with clock_getres().
> 
> Yes, it's not changing after boot anymore.
> 
> Thanks,
> 
> 	tglx
> 

Ok, I will remove the loop from both the implementations and post it with v2.

-- 
Regards,
Vincenzo



[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux