Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-20 Thread Matthias Kaehlcke
On Wed, Mar 20, 2019 at 10:55:06PM +0900, Masahiro Yamada wrote: > On Sat, Mar 16, 2019 at 4:55 AM Matthias Kaehlcke wrote: > > > > Building the 32-bit vDSO with a recent clang version fails due > > to undefined symbols: > > > > arch/x86/entry/vdso/vdso32.so.dbg: undefined symbols found > > > >

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-20 Thread Masahiro Yamada
On Sat, Mar 16, 2019 at 6:32 AM Nick Desaulniers wrote: > > On Fri, Mar 15, 2019 at 12:54 PM Matthias Kaehlcke wrote: > > > > Building the 32-bit vDSO with a recent clang version fails due > > to undefined symbols: > > > > arch/x86/entry/vdso/vdso32.so.dbg: undefined symbols found > > > > The

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-20 Thread Masahiro Yamada
On Sat, Mar 16, 2019 at 4:55 AM Matthias Kaehlcke wrote: > > Building the 32-bit vDSO with a recent clang version fails due > to undefined symbols: > > arch/x86/entry/vdso/vdso32.so.dbg: undefined symbols found > > The undefined symbol in this case is __lshrdi3, which is part of > the compiler

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-18 Thread Peter Zijlstra
On Mon, Mar 18, 2019 at 01:44:35PM -0700, Matthias Kaehlcke wrote: > You have a point, enabling -Oz (aggressive optimization for size) > doesn't seem a good choice for the entire kernel. Note that in this instance, -Os actually generates _smaller_ code than -Oz, now that's mostly because of

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-18 Thread Matthias Kaehlcke
Hi Peter, On Mon, Mar 18, 2019 at 06:16:04PM +0100, Peter Zijlstra wrote: > On Mon, Mar 18, 2019 at 10:09:37AM -0700, Nick Desaulniers wrote: > > On Fri, Mar 15, 2019 at 3:29 PM Matthias Kaehlcke wrote: > > > On Fri, Mar 15, 2019 at 02:31:09PM -0700, 'Nick Desaulniers' via Clang > > > Built

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-18 Thread Peter Zijlstra
On Mon, Mar 18, 2019 at 10:09:37AM -0700, Nick Desaulniers wrote: > On Fri, Mar 15, 2019 at 3:29 PM Matthias Kaehlcke wrote: > > On Fri, Mar 15, 2019 at 02:31:09PM -0700, 'Nick Desaulniers' via Clang > > Built Linux wrote: > > > Is there a config I can set to reproduce this, in order to help > >

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-18 Thread Nick Desaulniers
On Fri, Mar 15, 2019 at 3:29 PM Matthias Kaehlcke wrote: > On Fri, Mar 15, 2019 at 02:31:09PM -0700, 'Nick Desaulniers' via Clang Built > Linux wrote: > > Is there a config I can set to reproduce this, in order to help > > test? > > I encountered it with a Chrome OS specific configuration, but a

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-18 Thread Peter Zijlstra
On Fri, Mar 15, 2019 at 04:18:31PM -0700, h...@zytor.com wrote: > Note: it is also probably no reason to use -Os/-Oz for the vdso. Is anyone actually using -Os and CONFIG_CC_OPTIMIZE_FOR_SIZE ? I've been staring at compiler output a lot lately and -Os really generates atrocious crap. That is,

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-15 Thread hpa
On March 15, 2019 3:29:06 PM PDT, Matthias Kaehlcke wrote: >Hi Nick, > >On Fri, Mar 15, 2019 at 02:31:09PM -0700, 'Nick Desaulniers' via Clang >Built Linux wrote: >> On Fri, Mar 15, 2019 at 12:54 PM Matthias Kaehlcke >wrote: >> > >> > Building the 32-bit vDSO with a recent clang version fails

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-15 Thread Matthias Kaehlcke
Hi Nick, On Fri, Mar 15, 2019 at 02:31:09PM -0700, 'Nick Desaulniers' via Clang Built Linux wrote: > On Fri, Mar 15, 2019 at 12:54 PM Matthias Kaehlcke wrote: > > > > Building the 32-bit vDSO with a recent clang version fails due > > to undefined symbols: > > > >

Re: [PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-15 Thread Nick Desaulniers
On Fri, Mar 15, 2019 at 12:54 PM Matthias Kaehlcke wrote: > > Building the 32-bit vDSO with a recent clang version fails due > to undefined symbols: > > arch/x86/entry/vdso/vdso32.so.dbg: undefined symbols found > > The undefined symbol in this case is __lshrdi3, which is part of > the compiler

[PATCH] x86/vdso: include generic __lshrdi3 in 32-bit vDSO

2019-03-15 Thread Matthias Kaehlcke
Building the 32-bit vDSO with a recent clang version fails due to undefined symbols: arch/x86/entry/vdso/vdso32.so.dbg: undefined symbols found The undefined symbol in this case is __lshrdi3, which is part of the compiler runtime library, however the vDSO isn't linked against this library.