From 5b290566519a87c563945a033cb49863317ad63d Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Thu, 15 Feb 2024 14:02:35 +0000 Subject: openssh: Add a work around for ICE on mips/mips64 Unfortunately the new openssh version has an ICE on mips. This looks similar to: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104817 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104820 Given how long these have been open, workaround the issue by disabling the compiler hardening options on mips. It is likely better to do this than have the open CVEs for everyone as we can't upgrade. An example: | during RTL pass: zero_call_used_regs | clientloop.c: In function 'client_loop': | clientloop.c:1699:1: internal compiler error: in int_mode_for_mode, at stor-layout.cc:407 | 1699 | } | | ^ | 0x14d0acc internal_error(char const*, ...) | ???:0 | 0x5cf765 fancy_abort(char const*, int, char const*) | ???:0 | 0x826f1f emit_move_insn_1(rtx_def*, rtx_def*) | ???:0 | 0x8270c5 emit_move_insn(rtx_def*, rtx_def*) | ???:0 | 0xb7b994 default_zero_call_used_regs(HARD_REG_SET) | ???:0 | Please submit a full bug report, with preprocessed source (by using -freport-bug). | Please include the complete backtrace with any bug report. Signed-off-by: Richard Purdie --- meta/recipes-connectivity/openssh/openssh_9.6p1.bb | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'meta/recipes-connectivity/openssh') diff --git a/meta/recipes-connectivity/openssh/openssh_9.6p1.bb b/meta/recipes-connectivity/openssh/openssh_9.6p1.bb index 6366cefdf9..1fd36a266f 100644 --- a/meta/recipes-connectivity/openssh/openssh_9.6p1.bb +++ b/meta/recipes-connectivity/openssh/openssh_9.6p1.bb @@ -81,6 +81,10 @@ EXTRA_OECONF = "'LOGIN_PROGRAM=${base_bindir}/login' \ # musl doesn't implement wtmp/utmp and logwtmp EXTRA_OECONF:append:libc-musl = " --disable-wtmp --disable-lastlog" +# Work around ICE on mips/mips64 starting in 9.6p1 +EXTRA_OECONF:append:mips = " --without-hardening" +EXTRA_OECONF:append:mips64 = " --without-hardening" + # Since we do not depend on libbsd, we do not want configure to use it # just because it finds libutil.h. But, specifying --disable-libutil # causes compile errors, so... -- cgit 1.2.3-korg