Re: [PATCH v3 1/2] x86/vdso: Move mult and shift into struct vgtod_ts

From: Sverdlin, Alexander (Nokia - DE/Ulm)
Date: Thu Jun 27 2019 - 08:00:54 EST


Hello Thomas!

On 24/06/2019 11:40, Thomas Gleixner wrote:
>>> The alternative solution for this is what Vincenzo has in his unified VDSO
>>> patch series:
>>>
>>> https://lkml.kernel.org/r/20190621095252.32307-1-vincenzo.frascino@xxxxxxx
>>>
>>> It leaves the data struct unmodified and has a separate array for the raw
>>> clock. That does not have the side effects at all.
>>>
>>> I'm in the process of merging that series and I actually adapted your
>>> scheme to the new unified infrastructure where it has exactly the same
>>> effects as with your original patches against the x86 version.
>> please let me know if I need to rework [2/2] based on some not-yet-published
>> branch of yours.
> I've pushed it out now to
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers/vdso
>
> The generic VDSO library has the support for RAW already with that separate
> array. Testing would be welcomed!

Thanks for your and Vincenzo's efforts!
I've applied the series onto 5.2.0-rc6 and did a quick test on a bare x86_64 and
for me it looks good:

Number of clock_gettime() calls in 10 seconds:

Before After Diff
MONOTONIC 152404300 200825950 +32%
MONOTONIC_RAW 38804788 198765053 +412%
REALTIME 151672619 201371468 +33%


--
Best regards,
Alexander Sverdlin.