[PATCH] configs: Get rid of obsolete CONFIG_ENABLE_WARN_DEPRECATED
This Kconfig option was removed during v4.19 development in commit 771c035372a0 ("deprecate the '__deprecated' attribute warnings entirely and for good") so there's no point to keep it in defconfigs any longer. FWIW defconfigs were patched with: --->8-- find . -name *_defconfig -exec sed -i '/CONFIG_ENABLE_WARN_DEPRECATED/d' {} \; --->8-- Signed-off-by: Alexey Brodkin Cc: Jonathan Corbet Cc: Federico Vaga Cc: Vineet Gupta Cc: Russell King Cc: Florian Fainelli Cc: Ray Jui Cc: Scott Branden Cc: bcm-kernel-feedback-l...@broadcom.com Cc: Eric Anholt Cc: Stefan Wahren Cc: "Uwe Kleine-Konig" Cc: Vladimir Zapolskiy Cc: Liviu Dudau Cc: Sudeep Holla Cc: Lorenzo Pieralisi Cc: Maxime Coquelin Cc: Alexandre Torgue Cc: Yoshinori Sato Cc: Geert Uytterhoeven Cc: Ley Foon Tan Cc: Jonas Bonn Cc: Stefan Kristiansson Cc: Stafford Horne Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Michael Ellerman Cc: Rich Felker Cc: "David S. Miller" Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Borislav Petkov Cc: x...@kernel.org Cc: Miguel Ojeda Cc: Andrew Morton Cc: Alessia Mantegazza Cc: Kevin Hilman Cc: Eugeniy Paltsev Cc: Anders Roxell Cc: Linus Walleij Cc: Arnd Bergmann Cc: Patrice Chotard Cc: Krzysztof Kozlowski Cc: Bjorn Helgaas Cc: Paul Burton Cc: Adam Borowski Cc: linux-...@vger.kernel.org Cc: linux-snps-arc@lists.infradead.org Cc: linux-arm-ker...@lists.infradead.org Cc: linux-rpi-ker...@lists.infradead.org Cc: linux-st...@st-md-mailman.stormreply.com Cc: uclinux-h8-de...@lists.sourceforge.jp Cc: linux-m...@lists.linux-m68k.org Cc: nios2-...@lists.rocketboards.org Cc: openr...@lists.librecores.org Cc: linuxppc-...@lists.ozlabs.org Cc: linux...@vger.kernel.org Cc: sparcli...@vger.kernel.org --- Documentation/process/4.Coding.rst| 2 +- Documentation/translations/it_IT/process/4.Coding.rst | 2 +- arch/arc/configs/axs101_defconfig | 1 - arch/arc/configs/axs103_defconfig | 1 - arch/arc/configs/axs103_smp_defconfig | 1 - arch/arc/configs/haps_hs_defconfig| 1 - arch/arc/configs/haps_hs_smp_defconfig| 1 - arch/arc/configs/hsdk_defconfig | 1 - arch/arc/configs/nps_defconfig| 1 - arch/arc/configs/nsim_700_defconfig | 1 - arch/arc/configs/nsim_hs_defconfig| 1 - arch/arc/configs/nsim_hs_smp_defconfig| 1 - arch/arc/configs/nsimosci_defconfig | 1 - arch/arc/configs/nsimosci_hs_defconfig| 1 - arch/arc/configs/nsimosci_hs_smp_defconfig| 1 - arch/arc/configs/tb10x_defconfig | 1 - arch/arc/configs/vdk_hs38_defconfig | 1 - arch/arc/configs/vdk_hs38_smp_defconfig | 1 - arch/arm/configs/bcm2835_defconfig| 1 - arch/arm/configs/cns3420vb_defconfig | 1 - arch/arm/configs/efm32_defconfig | 1 - arch/arm/configs/eseries_pxa_defconfig| 1 - arch/arm/configs/gemini_defconfig | 1 - arch/arm/configs/lpc18xx_defconfig| 1 - arch/arm/configs/mini2440_defconfig | 1 - arch/arm/configs/moxart_defconfig | 1 - arch/arm/configs/mps2_defconfig | 1 - arch/arm/configs/nuc910_defconfig | 1 - arch/arm/configs/nuc950_defconfig | 1 - arch/arm/configs/nuc960_defconfig | 1 - arch/arm/configs/stm32_defconfig | 1 - arch/h8300/configs/edosk2674_defconfig| 1 - arch/h8300/configs/h8300h-sim_defconfig | 1 - arch/h8300/configs/h8s-sim_defconfig | 1 - arch/m68k/configs/amcore_defconfig| 1 - arch/m68k/configs/stmark2_defconfig | 1 - arch/nios2/configs/10m50_defconfig| 1 - arch/nios2/configs/3c120_defconfig| 1 - arch/openrisc/configs/or1ksim_defconfig | 1 - arch/openrisc/configs/simple_smp_defconfig| 1 - arch/powerpc/configs/mpc512x_defconfig| 1 - arch/powerpc/configs/ppc6xx_defconfig | 1 - arch/sh/configs/apsh4a3a_defconfig| 1 - arch/sh/configs/edosk7705_defconfig | 1 - arch/sh/configs/espt_defconfig| 1 - arch/sh/configs/sdk7786_defconfig | 1 - arch/sh/configs/sh2007_defconfig | 1 - arch/sh/configs/sh7724_generic_defconfig | 1 - arch/sh/configs/sh7763rdp_defconfig | 1 - arch/sh/configs/sh7770_generic_defconfig | 1 - arch/sh/configs/sh7785lcr_defconfig | 1 - arch/sh/configs/ul2_defconfig
ARC binutils init/fini (was Re: [PATCH 03/21] ARC: ABI Implementation)
On 12/18/18 3:09 PM, Joseph Myers wrote: >> diff --git a/sysdeps/arc/crti.S b/sysdeps/arc/crti.S > As a new port I think it would be best to use init_array in your Implies > file so you don't need these crti / crtn files, and make GCC generate > init_array / fini_array exclusively. (See RISC-V and C-Sky discussions of > this issue.) > I did the switch and while is working, there are additional test failures | FAIL: dlfcn/bug-atexit1 | FAIL: dlfcn/bug-atexit2 | FAIL: dlfcn/tstatexit | FAIL: dlfcn/tstcxaatexit | FAIL: nptl/tst-atfork2 | FAIL: nptl/tst-cond17 | FAIL: stdlib/test-dlclose-exit-race In the failing case, the dsos are NOT getting the DT_INIT/DT_FINI dynamic tags Consider glibc test dlfcn/tstatexit, which uses a dso modatexit.so In good case | arc-linux-readelf -a modatexit.os | | Section Headers: | [Nr] Name TypeAddr OffSize ES Flg Lk Inf Al | [ 9] .init PROGBITS047c 00047c 44 00 AX 0 0 4 | [12] .fini PROGBITS06f8 0006f8 28 00 AX 0 0 4 | | Dynamic section at offset 0x1f08 contains 23 entries: | 0x000c (INIT) 0x47c | 0x000d (FINI) 0x6f8 In broken case, init/fini sections exist, but DT_INI/DT_FINI are missing. | | Dynamic section at offset 0x1f2c contains 19 entries: <-- missing INIT/FINI | I suspected some bintuils/gcc shenanigans and tried hacking around, but was led far too astray. (1). gcc config test failing (false alaram) | host-gcc-final-ab544139bfee/build/gcc/config.log | |configure:22941: checking for .preinit_array/.init_array/.fini_array support |configure:23106: checking cross compile... guessing |configure:23111: result: no gcc was seemingly built w/o init_array support leading to inclusion of default gcc/config/initfini-array.h However doing a glibc aarch64 build I see the same output so perhaps it is not relevant. (2). ARC binutils port seems to hardwire _init/_fini (and the only arch to do that) so I ripped out the relevant handling from ld, but that doesn't help. https://github.com/foss-for-synopsys-dwc-arc-processors/binutils-gdb/commit/56771171fa7cb9e31c65e26a656a8588d603d924 So I'm not sure if this is deficiency of linker emulation script or code ld/bfd etc.. -Vineet ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc
Re: ARC binutils init/fini (was Re: [PATCH 03/21] ARC: ABI Implementation)
On Mon, 28 Jan 2019, Vineet Gupta wrote: > In the failing case, the dsos are NOT getting the DT_INIT/DT_FINI > dynamic tags And they shouldn't be (they should have DT_INIT_ARRAY / DT_FINI_ARRAY instead). > (1). gcc config test failing (false alaram) > > | host-gcc-final-ab544139bfee/build/gcc/config.log > | > |configure:22941: checking for .preinit_array/.init_array/.fini_array support > |configure:23106: checking cross compile... guessing > |configure:23111: result: no > > gcc was seemingly built w/o init_array support leading to inclusion of default > gcc/config/initfini-array.h > However doing a glibc aarch64 build I see the same output so perhaps it is not > relevant. This was discussed at length in the C-Sky discussion. In short: the proper fix is to change that configure test to apply for cross compilation as well, other than in the very limited case where it tries to run something (but doing so is not appropriate in the current regression-fixes-only GCC development stage). You can hack around it with gcc_cv_initfini_array=yes for the target in config.gcc, as done by a few architectures. Or you can define the relevant target macros in gcc/config//.h to force init_array / fini_array use independent of the configure test, as done for AArch64. -- Joseph S. Myers jos...@codesourcery.com ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc
Re: ARC binutils init/fini (was Re: [PATCH 03/21] ARC: ABI Implementation)
On 1/28/19 3:13 PM, Joseph Myers wrote: > This was discussed at length in the C-Sky discussion. In short: the > proper fix is to change that configure test to apply for cross compilation > as well, other than in the very limited case where it tries to run > something (but doing so is not appropriate in the current > regression-fixes-only GCC development stage). You can hack around it with > gcc_cv_initfini_array=yes for the target in config.gcc, as done by a few > architectures. Or you can define the relevant target macros in > gcc/config//.h to force init_array / fini_array use > independent of the configure test, as done for AArch64. Awesome, now I see how it was working for RISCV (config test printed "cached") and AArch64 I've added a local hack to gcc.config to test things out and will tackle this over at gcc mailing list. Many thx for untangling this for me. I found the C-Sky discussion as well [1] adding a link here for someone else in future who trips on this again. -Vineet [1] https://sourceware.org/ml/libc-alpha/2018-11/msg00870.html ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc
[PATCH] [ARC]: Enable init_array support
gcc's common configure script has a subtle flaw that it only tests {init,fini.preinit}_array support when NOT cross compiling. This causes cross builds to erroneously deduce that the feature is not supported by the target. | host-gcc-final-ab544139bfee/build/gcc/config.log | |configure:22941: checking for .preinit_array/.init_array/.fini_array support |configure:23106: checking cross compile... guessing |configure:23111: result: no The right fix is to enable this for *all* cross setups (and address any fallouts). However in the short-term to enable ARC glibc port to upstream, force enable this for ARC. This has been discussed at length on glibc mailing list [1], [2] [1] https://sourceware.org/ml/libc-alpha/2018-11/msg00870.html [2] https://sourceware.org/ml/libc-alpha/2019-01/msg00656.html gcc/ 2019-xx-xx Vineet Gupta * gcc/config.gcc: Force .init_array for ARC Signed-off-by: Vineet Gupta --- gcc/ChangeLog | 4 gcc/config.gcc | 3 +++ 2 files changed, 7 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f5872dbeab7c..4c86d5375bcc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2019-01-28 Vineet Gupta + + * gcc/config.gcc: Force .init_array for ARC + 2019-01-28 Jakub Jelinek PR middle-end/89002 diff --git a/gcc/config.gcc b/gcc/config.gcc index a189cb19f633..eef4b4eac918 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -1110,6 +1110,9 @@ arc*-*-linux*) case ${with_endian} in big*) tm_file="arc/big.h ${tm_file}" esac + # Force .init_array support. The configure script cannot always + # automatically detect that GAS supports it, yet we require it. + gcc_cv_initfini_array=yes ;; arm-wrs-vxworks|arm-wrs-vxworks7) extra_options="${extra_options} arm/vxworks.opt" -- 2.7.4 ___ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc