Received: by 2002:a05:6358:5282:b0:b5:90e7:25cb with SMTP id g2csp3407041rwa; Tue, 23 Aug 2022 04:22:47 -0700 (PDT) X-Google-Smtp-Source: AA6agR4cpxfdJUhoTlR0hYs+i11c8rYQy2PkRmlu0HWucdtHDDyvKKXmMCAfkUeRy2wYkoynFlII X-Received: by 2002:a63:eb0e:0:b0:429:aefa:9fa9 with SMTP id t14-20020a63eb0e000000b00429aefa9fa9mr19582828pgh.122.1661253767483; Tue, 23 Aug 2022 04:22:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661253767; cv=none; d=google.com; s=arc-20160816; b=p5+loDvS4kcmKn2NZ4trjrZDgWFrnZIyFZB69ZKy8Da9vvYkguy4tg0pMI/9lBSmaX Bvy/ePl2Duu43lSHpvw+G7NDNWnrLuCwuBKiDSYLHKmDKOLkT1j4yLMWqp0WZlML9CBI QHYL4PO4bUUGHiLgna/II2/gAM0s7D8eobgXO8+0cYMLgUnYUD/Y+GBaXDIpSxlzVO38 Gynez5ZLHRxC0gy83xa6WzKMAwYisjd7ikiOatkOqYj+eUwtYf5HNo5GIxpO1tWp9Nwx NhIlNsuRH3h2QzuBSg6aDrN3olicIeQH505crXAItNfQyHJYjsysJg4NcASqIQDwMfOo pS2w== 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=nhD4fcGVnQzdOWB9YK8V4DHzk91/cJju7mNJvcBhoRs=; b=EpQO5GA4vvteZ7FihYSDStHpUodaL6jPvLA873Y/rBR3TctXvGtOG9E+6F2Kw3ArwZ Oo0q/zn22l8G8g+qZFuexPk3cS3fgmQjheupn7BWpd8sPGqM8hVoJgj7ynzYWotHLj9a Dqhq2sXH04ruPuObiS6uDp4AFvQxbXK/KWKWo+xy+cYOjCbk2SFPsGoX4M84HxSERQcP 4BZBXdElbAAqN10fd4fgRPGO9YUxHrVOcvJLYRZF5Zlmy+UZ8sS8v2UX+nL6jl5G1kmE I0wsddDU1ZQNGBV5ood2rJKQC3nNtippj7SBEgfo985wjTV47sVsQQJW/MyXGD1oFZxf 7ZLw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=Ugn5F5tg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id s8-20020a17090a440800b001ed0f6f1010si14136496pjg.70.2022.08.23.04.22.36; Tue, 23 Aug 2022 04:22:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=Ugn5F5tg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S1354876AbiHWK0i (ORCPT + 99 others); Tue, 23 Aug 2022 06:26:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35642 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1353696AbiHWKLx (ORCPT ); Tue, 23 Aug 2022 06:11:53 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CD168E5C; Tue, 23 Aug 2022 01:58:17 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 2CF3361561; Tue, 23 Aug 2022 08:58:17 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 1571FC433C1; Tue, 23 Aug 2022 08:58:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1661245096; bh=zZLL++bYvl0F92rMoTpAbVJJgVpyIgrqAToCvPmUEYA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ugn5F5tglJQKSUPwXFIg/zWaZG+8j2aM6IMkXz8o850xcdOHms1Ig4vYjqKQwLMyG +YktQjAfVs/gecCFIVkuyqZ2elsRHTd1ee8lag7+hwe3z62MLxbagepBtQ66yB5zB2 ncqjlVS6yo+xtb5JC+37t2+0BeBDDhhqR+wR4Cxg= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Helge Deller , Luis Chamberlain , Sasha Levin Subject: [PATCH 5.15 212/244] modules: Ensure natural alignment for .altinstructions and __bug_table sections Date: Tue, 23 Aug 2022 10:26:11 +0200 Message-Id: <20220823080106.579362565@linuxfoundation.org> X-Mailer: git-send-email 2.37.2 In-Reply-To: <20220823080059.091088642@linuxfoundation.org> References: <20220823080059.091088642@linuxfoundation.org> User-Agent: quilt/0.67 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Helge Deller [ Upstream commit 87c482bdfa79f378297d92af49cdf265be199df5 ] In the kernel image vmlinux.lds.S linker scripts the .altinstructions and __bug_table sections are 4- or 8-byte aligned because they hold 32- and/or 64-bit values. Most architectures use altinstructions and BUG() or WARN() in modules as well, but in the module linker script (module.lds.S) those sections are currently missing. As consequence the linker will store their content byte-aligned by default, which then can lead to unnecessary unaligned memory accesses by the CPU when those tables are processed at runtime. Usually unaligned memory accesses are unnoticed, because either the hardware (as on x86 CPUs) or in-kernel exception handlers (e.g. on parisc or sparc) emulate and fix them up at runtime. Nevertheless, such unaligned accesses introduce a performance penalty and can even crash the kernel if there is a bug in the unalignment exception handlers (which happened once to me on the parisc architecture and which is why I noticed that issue at all). This patch fixes a non-critical issue and might be backported at any time. It's trivial and shouldn't introduce any regression because it simply tells the linker to use a different (8-byte alignment) for those sections by default. Signed-off-by: Helge Deller Link: https://lore.kernel.org/all/Yr8%2Fgr8e8I7tVX4d@p100/ Signed-off-by: Luis Chamberlain Signed-off-by: Sasha Levin --- scripts/module.lds.S | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/module.lds.S b/scripts/module.lds.S index 1d0e1e4dc3d2..3a3aa2354ed8 100644 --- a/scripts/module.lds.S +++ b/scripts/module.lds.S @@ -27,6 +27,8 @@ SECTIONS { .ctors 0 : ALIGN(8) { *(SORT(.ctors.*)) *(.ctors) } .init_array 0 : ALIGN(8) { *(SORT(.init_array.*)) *(.init_array) } + .altinstructions 0 : ALIGN(8) { KEEP(*(.altinstructions)) } + __bug_table 0 : ALIGN(8) { KEEP(*(__bug_table)) } __jump_table 0 : ALIGN(8) { KEEP(*(__jump_table)) } __patchable_function_entries : { *(__patchable_function_entries) } -- 2.35.1