From patchwork Mon Jul 19 14:53:05 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Greg KH X-Patchwork-Id: 479889 Delivered-To: patch@linaro.org Received: by 2002:a02:c94a:0:0:0:0:0 with SMTP id u10csp4221358jao; Mon, 19 Jul 2021 08:16:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzbULGe90F12J/V+ex9iiE+wDMip6KUCdawFQDaMT3SeUlUy9Q1NpdtWLoqeH9rsuIJz6MR X-Received: by 2002:a5d:9ccb:: with SMTP id w11mr14091915iow.174.1626707792262; Mon, 19 Jul 2021 08:16:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626707792; cv=none; d=google.com; s=arc-20160816; b=j5pFlZer3b+wlh6s2MmXiE79NGbAogCwEIzhn4s/CQpmM3pPOwYOFWsnqyA6Zo8qR+ CVgcEasAbUIzT8D42Mv/g/ZWN5iD1fs1iOdXAhteSGAHPMLR0E7lj8TQplxz3WI23hH3 e7HXzVLkvZsEbslOpU3up/TFrCj+5V1u6Y3K8H4s/9sZ9XdnUuyGDsg6z/4WVkyR/XgH OjMNXv7eEih0aH0tBh/qSIADR+131cDTgQFHGfDfay2xoZpQvi0gZ/z4Fl/1feV0INYn W0ASZSihkjyrU1dbTiHPASFFGWqkmVvUAtNrzfUC2u1Kb2lOZDUKMan5d8Tjl/dlTgTf G4oQ== 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=AxdN1HJ/Ut8PcyWH9WIa+wNF/gRzhUaekJim0SI7DFE=; b=FRwhnZmrVwHCbYubLf0gBF0Exe2L0VL4UKMYqixm6BVcL58FaAovLSOL4ZVLKONLr+ S8zxmcoY/NZH0KZoUasdjy2LrRmIwg/SMBxNeIFaN7DyHtjLbenjqv9IJwWhyY+X3uHV hdzyPNcIzfbWzKm8J4LUQ1p/Fh92P9u3ImbJBQsW5vKB/l16LzEcrsvHhpWGuom+sATT ovT86bbBPaf8vOQ9Te2QdBHLZKJS/NDMMYMmYmRlRJK+4CsrhSd2G2jczH41rfDS5Xnx +ggf3kweGm7ElD47MdqI0NxzLPzvvRm4IxUe8UCZfUe3+cXi+xuTA1p3s+cHLSt+z3VC avsg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=MyePAsyA; 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 t25si10528964ios.38.2021.07.19.08.16.32; Mon, 19 Jul 2021 08:16:32 -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=MyePAsyA; 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 S244923AbhGSOft (ORCPT + 12 others); Mon, 19 Jul 2021 10:35:49 -0400 Received: from mail.kernel.org ([198.145.29.99]:46568 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S245368AbhGSOed (ORCPT ); Mon, 19 Jul 2021 10:34:33 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 0245E6128A; Mon, 19 Jul 2021 15:13:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626707639; bh=COMMYMrIZyJA7Y/8b9KO9zfJUI/g6UHTY3iQqUVpiVw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MyePAsyAfruDiZjmJUo1LtM/EPKj6Pkz+lUglUEFvWNcyzP9xnMdxXtOL2Nr8gPAG OSf2EmHKhoIB/3RXGg0CHHMH4XVOMbmTBS9wIjXmYEkeWL1LWO3n+6831RbVL+Bt/K PIPYmimV9Fpw9vV0Cg2pvptWfA3rFHoKTJanFBOw= 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 4.9 243/245] mips: always link byteswap helpers into decompressor Date: Mon, 19 Jul 2021 16:53:05 +0200 Message-Id: <20210719144948.218519419@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210719144940.288257948@linuxfoundation.org> References: <20210719144940.288257948@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 0fa91c981658..3e93eea5a5f5 100644 --- a/arch/mips/boot/compressed/Makefile +++ b/arch/mips/boot/compressed/Makefile @@ -33,7 +33,7 @@ KBUILD_AFLAGS := $(LINUXINCLUDE) $(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 bswapsi.c $(obj)/ashldi3.o $(obj)/bswapsi.o: KBUILD_CFLAGS += -I$(srctree)/arch/mips/lib