Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp3854476pxv; Mon, 19 Jul 2021 10:19:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzuOzh4zTgsSUOZf3MPH6yvLwRG9e4m1aP5PtXasGv5iKqd2D3sqp6uQZykhutt5pakIP// X-Received: by 2002:a17:906:805:: with SMTP id e5mr29107426ejd.310.1626715149690; Mon, 19 Jul 2021 10:19:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626715149; cv=none; d=google.com; s=arc-20160816; b=Yjyc5iqwqOt3QcH00X3IWB43GEAsHAmjT5aaFm2578fNctfb1MhhwW3MnFcz0KMHEU KQ3O7Ymj3NQC6Z+Z7tP4rEGci11kCnDrVxDJ9czvglHlFGOtZ/ARhg7H68lbZNHRL0XY 6rFFnsALDbik9OjKTLFeuH1U2UNr+PckUGk+liTsyJUk0SDEIhMeHb/DqUH87u3LNC6t F2Vsj5gMYKIsy1Kc8ICBO6hfyrp88oQ/fuYQcm/R50vmTssqppwuyZ6UhSSj2AuvW0Lo QGG5rlOJjoqDeQzwkgd5RRoXFqCadUi4u31MlDCDw9SqQoMfWviwFX3mnqHmz0h7f6qh bPyw== 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=/+3dLrFv7P5wvAhGTpIvM+vKtfGVtajHCbsIw3HhwiM=; b=Q57m8mqQGHX92FVyYsvXLqS8QworerKmWZJJ2WLXrNztnBbYgbzcGnERsaol+57RgA Lkmbut4egPxwTGEE5vMljm7spJrAZ1g6Row0Vzw1yLlwb7Osed3/4Xv6WYqHhesjBHrM TFc2SaSkSQLAzuY140D6TommEQqV1ir7suOug19yDj6rTZV2JNlc8Zlvewx2OIHDEAgZ VfYRSj/RmgnzH0C3in4HX29p/4GRkV9/VdKzGjpPfjOGM9RE+D17PntQebSlmHA43N0N ZGjY9fvQjanmV/+p8jXN6sdHVhZ8VPS9f58+q11A0/qJNOiguxqYS6HGcLIe+7uqsUiu yg6A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=GNi5LHxW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-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 j24si13682956eja.261.2021.07.19.10.18.45; Mon, 19 Jul 2021 10:19:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-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=GNi5LHxW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-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 S1355580AbhGSQgZ (ORCPT + 99 others); Mon, 19 Jul 2021 12:36:25 -0400 Received: from mail.kernel.org ([198.145.29.99]:38166 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1348088AbhGSPYe (ORCPT ); Mon, 19 Jul 2021 11:24:34 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id D022B61420; Mon, 19 Jul 2021 16:01:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626710493; bh=ynxWwos6ThPE3LdqM4qwi1zF9hkoNni01RHbrBSvwtw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GNi5LHxW831pWnOjYGIfubFw77u7Uv1Xph19x0FPxgJIw4j+pXc2G+xSxrEzArrEe zF8i7yrDCSrlTg3WW0BdR3pWTw5ot/OIpJh1hzdjc6TcY8PvrXVCH+dBLzf4CCPVjZ UxFW7HtApKgXfgT8rmUe5P2COKFRpWs3SewslBuE= 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.10 239/243] mips: always link byteswap helpers into decompressor Date: Mon, 19 Jul 2021 16:54:28 +0200 Message-Id: <20210719144948.637353837@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210719144940.904087935@linuxfoundation.org> References: <20210719144940.904087935@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@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(-) diff --git a/arch/mips/boot/compressed/Makefile b/arch/mips/boot/compressed/Makefile index 337ab1d18cc1..eae0fad30f27 100644 --- a/arch/mips/boot/compressed/Makefile +++ b/arch/mips/boot/compressed/Makefile @@ -39,7 +39,7 @@ KCOV_INSTRUMENT := n UBSAN_SANITIZE := 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 @@ -53,7 +53,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 -- 2.30.2