Re: [PATCH 16/32] x86/vdso: Generate vdso{,32}-timens.lds

2019-03-27 Thread Andrei Vagin
While the generic vdso patchset is in development, we decided to think about what other ways of generating two vdso libraries. In this patchset, we use a linker script, but it looks too complicated, so we decided to look at other options. Another obvious approach is the code patching technique.

Re: [PATCH 16/32] x86/vdso: Generate vdso{,32}-timens.lds

2019-02-08 Thread Dmitry Safonov
On 2/8/19 9:57 AM, Thomas Gleixner wrote: > On Thu, 7 Feb 2019, Rasmus Villemoes wrote: > > Cc: + Vincenzo, Will > >> On 06/02/2019 01.10, Dmitry Safonov wrote: >>> As it has been discussed on timens RFC, adding a new conditional branch >>> `if (inside_time_ns)` on VDSO for all processes is

Re: [PATCH 16/32] x86/vdso: Generate vdso{,32}-timens.lds

2019-02-08 Thread Thomas Gleixner
On Thu, 7 Feb 2019, Rasmus Villemoes wrote: Cc: + Vincenzo, Will > On 06/02/2019 01.10, Dmitry Safonov wrote: > > As it has been discussed on timens RFC, adding a new conditional branch > > `if (inside_time_ns)` on VDSO for all processes is undesirable. > > It will add a penalty for everybody as

Re: [PATCH 16/32] x86/vdso: Generate vdso{,32}-timens.lds

2019-02-07 Thread Dmitry Safonov
Hi Rasmus, On 2/7/19 8:31 AM, Rasmus Villemoes wrote: > These (14-19, if I'm reading them right) seems to add quite a lot of > complexity and fragility to the build, and other architectures would > probably have to add something similar to their vdso builds. > > I'm wondering why not make the

Re: [PATCH 16/32] x86/vdso: Generate vdso{,32}-timens.lds

2019-02-07 Thread Rasmus Villemoes
On 06/02/2019 01.10, Dmitry Safonov wrote: > As it has been discussed on timens RFC, adding a new conditional branch > `if (inside_time_ns)` on VDSO for all processes is undesirable. > It will add a penalty for everybody as branch predictor may mispredict > the jump. Also there are instruction

[PATCH 16/32] x86/vdso: Generate vdso{,32}-timens.lds

2019-02-05 Thread Dmitry Safonov
As it has been discussed on timens RFC, adding a new conditional branch `if (inside_time_ns)` on VDSO for all processes is undesirable. It will add a penalty for everybody as branch predictor may mispredict the jump. Also there are instruction cache lines wasted on cmp/jmp. Those effects of