From patchwork Mon Jul 19 14:54:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Greg Kroah-Hartman X-Patchwork-Id: 479982 Delivered-To: patch@linaro.org Received: by 2002:a02:c94a:0:0:0:0:0 with SMTP id u10csp4254915jao; Mon, 19 Jul 2021 08:53:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwAC6bUGHDk392EyRwLkr4Bt4CV22PnOfF5jqKHKFk3NeWScS8wf7v+013v7s2dz2xt0cjv X-Received: by 2002:a17:906:e099:: with SMTP id gh25mr27707222ejb.346.1626710020878; Mon, 19 Jul 2021 08:53:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626710020; cv=none; d=google.com; s=arc-20160816; b=FWGa0oGqxrZE9KtIqEoHTQzg4OFaE7TS7jJUcS2RN5BwBPUzxMsufIjWQAbSYe16Nk yiZJFdSiyCnyfp0HWCMr1qA185hj7Dhg0XgYUCvJj04qrpQkj0Unw3Re4m48lEGvtLDl Rz32ELjlIFuzOrTcbMQt6kV5J+cL9tmss+pQHxCISJmX0JOJuAhPuBnxvHZnCnCReAol zpesWUH9enpRsiFG5XcrXQ10qO8zWHcjPdRR7fkAt4/dmdFSslj/bfs4TwekTOxTfbD7 X5tHXlatsfAiVAPmoo9PCoHRFRZxFOir88RvqaqNr4OV8eQo+MqxRrve9JBTJRKIdTAg XZ+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=dT/FDh3TZ5tYqygIjJ/f/fD7M/0j7TWECQgV46+bUu8=; b=QxftmuSPhEm2zq2jjwD4d22NKLBn81uzt04lcCpYJJulGnYedAVoIL+SDvE/oEImpE PBPd30EcodGK+kaBImeYZwKmUn8nwA1Hnjs0hyP3D7K1oFjFquDGBmVszZ5SffHGf5Ys 360Vx0gQPV+YqPdwfQsWhoaqIXcTfvNn1azSffLfinAiMQ+jw0CIea5sDwxoGoxTMWJ7 WxwgFVzHD1pZ4iacFiPn8KjLazLGuw+j8RNiDU65XMzPWDXFtqqqZ7GMlfWQPQOhrMkg 6bA0P0HuearjNS4uX4IgffCJWY0P10Wap0JmSNglsfMaK9uJX1JEH288QXwikgs1E3pF RIuA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=pCeCdOfN; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z16si26773967edm.47.2021.07.19.08.53.40; Mon, 19 Jul 2021 08:53:40 -0700 (PDT) Received-SPF: pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=pCeCdOfN; spf=pass (google.com: domain of stable-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=stable-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345215AbhGSPMp (ORCPT + 12 others); Mon, 19 Jul 2021 11:12:45 -0400 Received: from mail.kernel.org ([198.145.29.99]:48156 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1344656AbhGSPLC (ORCPT ); Mon, 19 Jul 2021 11:11:02 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 8C35161355; Mon, 19 Jul 2021 15:51:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626709902; bh=ilAAsza47fyhNzBq535goglq9AzNyrdKAK5+/wxC07o=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pCeCdOfNAOhu9/e4BKNzQnzCphPXLp9U+I0cSec74lj3VtI1JR33AuUCxXnFYv6ab ZsD1I6HymvRvS6+IYO0+Dr52/NglqyBzNjWYP2ec6tUlDLCXICxCwTEJwkJruxmNaf XIL70FcZv9vqOZFgUjhbdtvOjVo7C/frD2q/L7gI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Arnd Bergmann , Thomas Bogendoerfer , Sasha Levin Subject: [PATCH 5.4 144/149] mips: always link byteswap helpers into decompressor Date: Mon, 19 Jul 2021 16:54:12 +0200 Message-Id: <20210719144935.359792114@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210719144901.370365147@linuxfoundation.org> References: <20210719144901.370365147@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: stable@vger.kernel.org From: Arnd Bergmann [ Upstream commit cddc40f5617e53f97ef019d5b29c1bd6cbb031ec ] My series to clean up the unaligned access implementation across architectures caused some mips randconfig builds to fail with: mips64-linux-ld: arch/mips/boot/compressed/decompress.o: in function `decompress_kernel': decompress.c:(.text.decompress_kernel+0x54): undefined reference to `__bswapsi2' It turns out that this problem has already been fixed for the XZ decompressor but now it also shows up in (at least) LZO and LZ4. From my analysis I concluded that the compiler could always have emitted those calls, but the different implementation allowed it to make otherwise better decisions about not inlining the byteswap, which results in the link error when the out-of-line code is missing. While it could be addressed by adding it to the two decompressor implementations that are known to be affected, but as this only adds 112 bytes to the kernel, the safer choice is to always add them. Fixes: c50ec6787536 ("MIPS: zboot: Fix the build with XZ compression on older GCC versions") Fixes: 0652035a5794 ("asm-generic: unaligned: remove byteshift helpers") Link: https://lore.kernel.org/linux-mm/202106301304.gz2wVY9w-lkp@intel.com/ Link: https://lore.kernel.org/linux-mm/202106260659.TyMe8mjr-lkp@intel.com/ Link: https://lore.kernel.org/linux-mm/202106172016.onWT6Tza-lkp@intel.com/ Link: https://lore.kernel.org/linux-mm/202105231743.JJcALnhS-lkp@intel.com/ Signed-off-by: Arnd Bergmann Signed-off-by: Thomas Bogendoerfer Signed-off-by: Sasha Levin --- arch/mips/boot/compressed/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.30.2 diff --git a/arch/mips/boot/compressed/Makefile b/arch/mips/boot/compressed/Makefile index 378cbfb31ee7..1d6ebbc2a5d0 100644 --- a/arch/mips/boot/compressed/Makefile +++ b/arch/mips/boot/compressed/Makefile @@ -33,7 +33,7 @@ KBUILD_AFLAGS := $(KBUILD_AFLAGS) -D__ASSEMBLY__ \ KCOV_INSTRUMENT := n # decompressor objects (linked with vmlinuz) -vmlinuzobjs-y := $(obj)/head.o $(obj)/decompress.o $(obj)/string.o +vmlinuzobjs-y := $(obj)/head.o $(obj)/decompress.o $(obj)/string.o $(obj)/bswapsi.o ifdef CONFIG_DEBUG_ZBOOT vmlinuzobjs-$(CONFIG_DEBUG_ZBOOT) += $(obj)/dbg.o @@ -47,7 +47,7 @@ extra-y += uart-ath79.c $(obj)/uart-ath79.c: $(srctree)/arch/mips/ath79/early_printk.c $(call cmd,shipped) -vmlinuzobjs-$(CONFIG_KERNEL_XZ) += $(obj)/ashldi3.o $(obj)/bswapsi.o +vmlinuzobjs-$(CONFIG_KERNEL_XZ) += $(obj)/ashldi3.o extra-y += ashldi3.c $(obj)/ashldi3.c: $(obj)/%.c: $(srctree)/lib/%.c FORCE