Re: [PATCH] uselib: default depending if libc5 was used

From: Josh Triplett
Date: Fri Nov 27 2015 - 15:05:17 EST


On Fri, Nov 27, 2015 at 12:48:29PM +0200, Riku Voipio wrote:
> On 27 November 2015 at 11:33, Josh Triplett <josh@xxxxxxxxxxxxxxxx> wrote:
> > On Fri, Nov 27, 2015 at 11:11:26AM +0200, Riku Voipio wrote:
> >> uselib hasn't been used since libc5; glibc does not use it.
> >> Deprecate uselib a bit more, by making the default y only
> >> if libc5 was widely used on the plaform.
> >>
> >> This makes arm64 kernel built with defconfig slighly smaller
> >>
> >> bloat-o-meter:
> >> add/remove: 0/3 grow/shrink: 0/2 up/down: 0/-1390 (-1390)
> >> function old new delta
> >> kernel_config_data 18164 18162 -2
> >> uselib_flags 20 - -20
> >> padzero 216 192 -24
> >> sys_uselib 380 - -380
> >> load_elf_library 964 - -964
> >>
> >> Signed-off-by: Riku Voipio <riku.voipio@xxxxxxxxxx>
> >> Cc: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
> >
> > Seems sensible. Can you also make it only "default y" on 32-bit x86,
> > not 64-bit x86, since the latter never had libc5?
>
> but running 32bit libc5 apps is possible with X86_64 kernel, so the
> check would become:
>
> || X86_32 || (X86_64 && IA32_EMULATION)

Fair point. Seems unlikely that anyone would do so, but certainly possible.

> > With that change:
> > Reviewed-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
> >
> >> init/Kconfig | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/init/Kconfig b/init/Kconfig
> >> index c24b6f7..bef326d 100644
> >> --- a/init/Kconfig
> >> +++ b/init/Kconfig
> >> @@ -285,7 +285,7 @@ config FHANDLE
> >>
> >> config USELIB
> >> bool "uselib syscall"
> >> - default y
> >> + def_bool ALPHA || M68K || SPARC || X86
> >> help
> >> This option enables the uselib syscall, a system call used in the
> >> dynamic linker from libc5 and earlier. glibc does not use this
> >> --
> >> 2.6.2
> >>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/