[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <268ff4cf-2f30-fead-fef5-e8e5f8f17aba@c-s.fr>
Date: Tue, 21 Apr 2020 08:56:35 +0200
From: Christophe Leroy <christophe.leroy@....fr>
To: Arnd Bergmann <arnd@...db.de>
Cc: Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
Michael Ellerman <mpe@...erman.id.au>,
Nathan Lynch <nathanl@...ux.ibm.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
linuxppc-dev <linuxppc-dev@...ts.ozlabs.org>,
Thomas Gleixner <tglx@...utronix.de>,
Vincenzo Frascino <vincenzo.frascino@....com>,
Andy Lutomirski <luto@...nel.org>
Subject: Re: [PATCH v7 0/7] powerpc: switch VDSO to C implementation
Le 20/04/2020 à 21:57, Arnd Bergmann a écrit :
> On Mon, Apr 20, 2020 at 6:56 PM Christophe Leroy
> <christophe.leroy@....fr> wrote:
>>
>> This is the seventh version of a series to switch powerpc VDSO to
>> generic C implementation.
>>
>> Main changes since v6 are:
>> - Added -fasynchronous-unwind-tables in CFLAGS
>> - Split patch 2 in two parts
>> - Split patch 5 (which was patch 4) in two parts
>>
>> This series applies on today's powerpc/merge branch.
>>
>> See the last two patches for details on changes and performance.
>>
>> Christophe Leroy (7):
>> powerpc/vdso64: Switch from __get_datapage() to get_datapage inline
>> macro
>> powerpc/vdso: Remove __kernel_datapage_offset and simplify
>> __get_datapage()
>> powerpc/vdso: Remove unused \tmp param in __get_datapage()
>> powerpc/processor: Move cpu_relax() into asm/vdso/processor.h
>> powerpc/vdso: Prepare for switching VDSO to generic C implementation.
>> powerpc/vdso: Switch VDSO to generic C implementation.
>
> This all looks fine, but I'm a bit puzzled why you don't add a
> clock_gettime64() implementation in the same series. Isn't
> that the main purpose of doing all that work?
Yes that was one of the objective, be able to add that as a second step.
First objective was adding the missing clocks and increasing
maintainability.
I can add a patch for that now, it looks easy, but how do I test it ?
vdsotest from Nathan doesn't seem to test that.
>
> Without it, any 32-bit user space has to go through the system call
> for time()/getttimeofday()/clock_gettime() when built with a
> modern libc.
>
How modern ? I have glibc 2.28, the only symbols it seems to know are
(extracted with 'strings') :
__vdso_clock_gettime
__vdso_time
__vdso_get_tbfreq
__vdso_getcpu
__vdso_clock_getres
__vdso_sigtramp32
__vdso_sigtramp_rt32
__vdso_gettimeofday
Christophe
Powered by blists - more mailing lists