diff options
author | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2017-06-01 22:32:03 +0530 |
---|---|---|
committer | Siddhesh Poyarekar <siddhesh@sourceware.org> | 2017-06-07 11:11:38 +0530 |
commit | ff08fc59e36e02074eba8ab39b0d9001363970f0 (patch) | |
tree | 1926c0dd4897a00b7541deb214bf6a1a480a8f8d /elf/rtld.c | |
parent | 6482e63403a3d13bf42f5029407b6151ad9f4ca5 (diff) | |
download | glibc-ff08fc59e36e02074eba8ab39b0d9001363970f0.tar.gz glibc-ff08fc59e36e02074eba8ab39b0d9001363970f0.tar.xz glibc-ff08fc59e36e02074eba8ab39b0d9001363970f0.zip |
tunables: Use glibc.tune.hwcap_mask tunable instead of _dl_hwcap_mask
Drop _dl_hwcap_mask when building with tunables. This completes the transition of hwcap_mask reading from _dl_hwcap_mask to tunables. * elf/dl-hwcaps.h: New file. * elf/dl-hwcaps.c: Include it. (_dl_important_hwcaps)[HAVE_TUNABLES]: Read and update glibc.tune.hwcap_mask. * elf/dl-cache.c: Include dl-hwcaps.h. (_dl_load_cache_lookup)[HAVE_TUNABLES]: Read glibc.tune.hwcap_mask. * sysdeps/sparc/sparc32/dl-machine.h: Likewise. * elf/dl-support.c (_dl_hwcap2)[HAVE_TUNABLES]: Drop _dl_hwcap_mask. * elf/rtld.c (rtld_global_ro)[HAVE_TUNABLES]: Drop _dl_hwcap_mask. (process_envvars)[HAVE_TUNABLES]: Likewise. * sysdeps/generic/ldsodefs.h (rtld_global_ro)[HAVE_TUNABLES]: Likewise. * sysdeps/x86/cpu-features.c (init_cpu_features): Don't initialize dl_hwcap_mask when tunables are enabled.
Diffstat (limited to 'elf/rtld.c')
-rw-r--r-- | elf/rtld.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/elf/rtld.c b/elf/rtld.c index 319ef062d4..3746653afb 100644 --- a/elf/rtld.c +++ b/elf/rtld.c @@ -159,7 +159,9 @@ struct rtld_global_ro _rtld_global_ro attribute_relro = ._dl_debug_fd = STDERR_FILENO, ._dl_use_load_bias = -2, ._dl_correct_cache_id = _DL_CACHE_DEFAULT_ID, +#if !HAVE_TUNABLES ._dl_hwcap_mask = HWCAP_IMPORTANT, +#endif ._dl_lazy = 1, ._dl_fpu_control = _FPU_DEFAULT, ._dl_pagesize = EXEC_PAGESIZE, @@ -2402,6 +2404,7 @@ process_envvars (enum mode *modep) _dl_show_auxv (); break; +#if !HAVE_TUNABLES case 10: /* Mask for the important hardware capabilities. */ if (!__libc_enable_secure @@ -2409,6 +2412,7 @@ process_envvars (enum mode *modep) GLRO(dl_hwcap_mask) = __strtoul_internal (&envline[11], NULL, 0, 0); break; +#endif case 11: /* Path where the binary is found. */ |