Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1698836

[PATCH] [RFC] ARM: move __bug_table into .data for XIP_KERNEL

Path csiph.com!goblin2!goblin.stu.neva.ru!aioe.org!bofh.it!news.nic.it!robomod
From Arnd Bergmann <arnd@arndb.de>
Newsgroups linux.kernel
Subject [PATCH] [RFC] ARM: move __bug_table into .data for XIP_KERNEL
Date Fri, 28 Jul 2017 16:20:02 +0200
Message-ID <u8ehs-4NW-29@gated-at.bofh.it> (permalink)
X-Original-To linux-arm-kernel@lists.infradead.org
X-Mailer git-send-email 2.9.0
X-Provags-ID V03:K0:RiRCpkEgaga6B5H0aVWVkOElmqsWxa6zZy9W4k19b47gD77w/i7 YoWI1xUD+9aDqTw20SrgC0kxzLK1gOVnY/unH2IQFipL9N0/re1rwirtZ5/jVapVcYx4u2y y0iA0Xpz8J4HsaUlVOKPA/qi5IACdvTtpvO/6mW0ns+aY2Mhe2uB/FbdEI6YZ331UuOB27c FW0jCLw2FysKaihDNIl8w==
X-Ui-Out-Filterresults notjunk:1;V01:K0:bT/qXh1YTZM=:aRWdSs5ngrKm3OQaqCiEPs GjkGLjv/3RppgigbIjcVObd5c2h1RwwjCW8zg4G3u/FSS1mW8EkPxLVfK+/KZ3iqL8HQx5J8J jS/yGgRQN9VvZN9wzTs+x3VMuhR5QjmmNAHsETCxVjPFoAGFSKqXfakhevVvnBu9gNBTCLwxY XJZoQoBlnsy9VqdZlHZe3EkDKNV+xF8jv4Gr7lQoYtbMlc+0RLIKLY0NzI9fzCcvOuZ7WcPDN Yla/6OSm16/JY9Hkvx0/Yybfdv7WDPbaOGmrWUzYkgAsFF+VhiZcITW4XhYKR0VRS9nNJN1qh E/Cthdou99R/+r3bEi3CjnW2PBQN9vBaqcHqaBoTIVKoLmveH2KBY/Uhv3qlthUQcqX7Vqgkm 8jgi7PJJMpXR1YZU4bS0n5cHlWwutyxOdt2ikLyZD9QKhPmgsvScmyWLVCabT7lhyEVkqb21I y3zNSQWrHLQvAaY/jQ2p/M3aYGTOSVJw0n0SCGXf7eZv3Tc+v8Xkb9mJaP3UmlvkvumwsG+GN yC8prMyYPLZxTe/xJQjpqdMPbMMaHQVypYckoQ0sRmLLcbvTe7zK3izlI43RIET7layLS95Km 6+ZjB4lOPI+J3hUfE3pFgk3X6E04QkGpnlY72ACmzGbXmTOH8FPdFwrtZj/Q55s1VGXF5d8dv NsMLjC50ATwrRJmYEEk4sOTqQz6cUb7DBj+7Xs3esJKthNbfmXu4qmjrgg9PWsZDqbeIXbAoK dmjv4Itj6egdEsvN73obeQpmJyP0zJflnbpU3Q==
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 51
Organization linux.* mail to news gateway
X-Original-Cc Arnd Bergmann <arnd@arndb.de>, Peter Zijlstra <peterz@infradead.org>, Matt Hart <matthew.hart@linaro.org>, Stefan Agner <stefan@agner.ch>, Chris Brandt <chris.brandt@renesas.com>, Ard Biesheuvel <ard.biesheuvel@linaro.org>, Russell King <rmk+kernel@arm.linux.org.uk>, Nicolas Pitre <nico@linaro.org>, Russell King <linux@armlinux.org.uk>, linux-kernel@vger.kernel.org
X-Original-Date Fri, 28 Jul 2017 16:10:49 +0200
X-Original-Message-ID <20170728141108.1283320-1-arnd@arndb.de>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1698836

Show key headers only | View raw


Matt Hart reports that vf610m4_defconfig kernels grew to 2GB
xipImage size after the __bug_table change.

I tried out a few things and found that moving the bug table
into the .data section avoids this problem. However, the
linker script magic is beyond my capabilities here, so this
is almost certainly not correct.

I've added a few people to Cc that understand this better
than I do, hopefully someone can turn my bogus patch into
a proper one.

Fixes: b5effd3815cc ("debug: Fix __bug_table[] in arch linker scripts")
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Matt Hart <matthew.hart@linaro.org>
Cc: Stefan Agner <stefan@agner.ch>
Cc: Chris Brandt <chris.brandt@renesas.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 arch/arm/kernel/vmlinux-xip.lds.S | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/arch/arm/kernel/vmlinux-xip.lds.S b/arch/arm/kernel/vmlinux-xip.lds.S
index a8ceec3e0580..1ebb40ecf411 100644
--- a/arch/arm/kernel/vmlinux-xip.lds.S
+++ b/arch/arm/kernel/vmlinux-xip.lds.S
@@ -241,12 +241,17 @@ SECTIONS
 		DATA_DATA
 		CONSTRUCTORS
 
+#ifdef CONFIG_GENERIC_BUG
+		__bug_table = ALIGN(8);
+		VMLINUX_SYMBOL(__start___bug_table) = .;
+		KEEP(*(__bug_table))
+		VMLINUX_SYMBOL(__stop___bug_table) = .;
+#endif
+
 		_edata = .;
 	}
 	_edata_loc = __data_loc + SIZEOF(.data);
 
-	BUG_TABLE
-
 #ifdef CONFIG_HAVE_TCM
         /*
 	 * We align everything to a page boundary so we can
-- 
2.9.0

Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread


Thread

[PATCH] [RFC] ARM: move __bug_table into .data for XIP_KERNEL Arnd Bergmann <arnd@arndb.de> - 2017-07-28 16:20 +0200
  Re: [PATCH] [RFC] ARM: move __bug_table into .data for XIP_KERNEL Nicolas Pitre <nicolas.pitre@linaro.org> - 2017-07-28 17:30 +0200
    Re: [PATCH] [RFC] ARM: move __bug_table into .data for XIP_KERNEL Ard Biesheuvel <ard.biesheuvel@linaro.org> - 2017-07-29 01:10 +0200
      Re: [PATCH] [RFC] ARM: move __bug_table into .data for XIP_KERNEL Nicolas Pitre <nicolas.pitre@linaro.org> - 2017-07-29 02:00 +0200

csiph-web