On Mon, Jan 11, 2021 at 11:44 PM Thomas Bogendoerfer tsbogend@alpha.franken.de wrote:
On Mon, Jan 11, 2021 at 08:57:25PM +0000, Alexander Lobakin wrote:
From: Kees Cook keescook@chromium.org Date: Mon, 11 Jan 2021 11:53:39 -0800
On Sun, Jan 10, 2021 at 11:53:50AM +0000, Alexander Lobakin wrote:
This series hunts the problems discovered after manual enabling of ARCH_WANT_LD_ORPHAN_WARN. Notably:
- adds the missing PAGE_ALIGNED_DATA() section affecting VDSO placement (marked for stable);
- stops blind catching of orphan text sections with .text.* directive;
- properly stops .eh_frame section generation.
Compile and runtime tested on MIPS32R2 CPS board with no issues using two different toolkits:
- Binutils 2.35.1, GCC 10.2.1 (with Alpine patches);
- LLVM stack: 11.0.0 and from latest Git snapshot.
Since v4 [3]:
- new: drop redundant .text.cps-vec creation and blind inclusion of orphan text sections via .text.* directive in vmlinux.lds.S;
- don't assert SIZEOF(.rel.dyn) as it's reported that it may be not empty on certain machines and compilers (Thomas);
- align GOT table like it's done for ARM64;
- new: catch UBSAN's "unnamed data" sections in generic definitions when building with LD_DEAD_CODE_DATA_ELIMINATION;
- collect Reviewed-bys (Kees, Nathan).
Looks good; which tree will this land through?
linux-mips/mips-next I guess, since 7 of 9 patches are related only to this architecture. This might need Arnd's Acked-bys or Reviewed-by for the two that refer include/asm-generic, let's see what Thomas think.
Looks good from my side and I have it already sitting in branch for submission.
Arnd, are you ok with the changes in include/asm-generic ?
Yes, I'm never quite sure about what to make of linker script changes, but I trust Kees on the review. For merging it through your tree:
Acked-by: Arnd Bergmann arnd@arndb.de