Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759927AbcCEAeU (ORCPT ); Fri, 4 Mar 2016 19:34:20 -0500 Received: from mout.kundenserver.de ([212.227.17.24]:58862 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755989AbcCEAeS (ORCPT ); Fri, 4 Mar 2016 19:34:18 -0500 From: Arnd Bergmann To: Brian Norris Cc: David Woodhouse , linux-arm-kernel@lists.infradead.org, linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mtd@lists.infradead.org, Tony Lindgren Subject: Re: [PATCH] mtd: only use __xipram annotation when XIP_KERNEL is set Date: Sat, 05 Mar 2016 01:33:27 +0100 Message-ID: <3185882.WT2d08mtAT@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) In-Reply-To: <20160305002203.GF55664@google.com> References: <1453736525-1959191-2-git-send-email-arnd@arndb.de> <5158260.vK2YuWzYIn@wuerfel> <20160305002203.GF55664@google.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:glR52cS7hGiQv4yV3AO/EZFSJySzYqUw/VJ/DStCWmoI8kIKz2I YAslEbvkAgFHu6ShSss0V/8ZqeXNtPsOtZSX/Kt+ul22tu0ia63sGSDoDGZQW0RYVAIYcRk aNc56btjqn9592yYUEunvKJQHfJZ5JDKsP0QU/PfDsywBg1D8SXnuOrpf0iZTnU+0TcaR8V dGcMx649NZi7mO4sAXXKw== X-UI-Out-Filterresults: notjunk:1;V01:K0:dUtU74jlRF0=:KWm5D289PeMt2GlWC6ixaY FcN8zZbjXDwjpHJR1xW/EwphvM5BHsthtXZVKF5rSgbg8RosWLRaxrCytq4pI8ur7Tdrs+8DE L38uBuVytDkUjskpD/INgSZ3u9vjgPME5G4tez3Xcj820zhMvC6egFrYM9H6hcRWfboAk+y3f hJ0VsHfODP2XPzyoBWvz3cVVqaIKGllxNjuvSCst0zQXfNryuc1Y8kkWPf5nirN+aJrwHimpL KTBEhk0U8Kstu7SHmDhFBOImud0kYzi1Eh2VnZGxPg3QEvZUQeIKULFYeBT8570MgNbhpy85h 5LTmqP6oEuGxQhoqMS7iE/biGvRmzA6L3feCA+V1pp3lOD4YB9jwBDhUsHVcRf6cwv/L7VKfR jAnCB7Mv6i6wyOVSE5KHdoMOUYkSjX5XywcINqyfhQyh1wyNjoNeTgqUwtzjPgyjigcNsUU4h Q6ik04N2eh88CQN+FAgR1h9I6PQaxYmSHbXCQCuBswX8GUkJV4Fr5ExfKAh0cpdwAHBJJQ255 k1ot55IuVd95ipUh/+fEsdoCRw4A6rXryiBp3kKGXlwvCZDGUEI82+IwlnrrJyHJNaLjOVxd8 YK3mvIIndzbIixHi4oOqhRh5hwCvoanQMw5SVnQhFRiiplTlplQ/F0mykIaZ39H+1T+pdEP71 zvQ7BCNNEnZHs0JlDoUSaK+CGV+qkxcd46oNjZfBopgWpONAxKzyo6wZS6v2jWzeU/vkYlZ75 EL6beqKKO3FGwWwv Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2838 Lines: 56 On Friday 04 March 2016 16:22:03 Brian Norris wrote: > Hi Arnd, > > On Sat, Mar 05, 2016 at 01:19:21AM +0100, Arnd Bergmann wrote: > > On Friday 04 March 2016 16:02:25 Brian Norris wrote: > > > On Mon, Jan 25, 2016 at 04:41:50PM +0100, Arnd Bergmann wrote: > > > > When XIP_KERNEL is enabled, some functions are defined in the .data > > > > ELF section because we require them to be in RAM whenever we communicate > > > > with the flash chip. However this causes problems when FTRACE is > > > > enabled and gcc emits calls to __gnu_mcount_nc in the function > > > > prolog: > > > > > > > > drivers/built-in.o: In function `cfi_chip_setup': > > > > :(.data+0x272fc): relocation truncated to fit: R_ARM_CALL against symbol `__gnu_mcount_nc' defined in .text section in arch/arm/kernel/built-in.o > > > > drivers/built-in.o: In function `cfi_probe_chip': > > > > :(.data+0x27de8): relocation truncated to fit: R_ARM_CALL against symbol `__gnu_mcount_nc' defined in .text section in arch/arm/kernel/built-in.o > > > > /tmp/ccY172rP.s: Assembler messages: > > > > /tmp/ccY172rP.s:70: Warning: ignoring changed section attributes for .data > > > > /tmp/ccY172rP.s: Error: 1 warning, treating warnings as errors > > > > make[5]: *** [drivers/mtd/chips/cfi_probe.o] Error 1 > > > > /tmp/ccK4rjeO.s: Assembler messages: > > > > /tmp/ccK4rjeO.s:421: Warning: ignoring changed section attributes for .data > > > > /tmp/ccK4rjeO.s: Error: 1 warning, treating warnings as errors > > > > make[5]: *** [drivers/mtd/chips/cfi_util.o] Error 1 > > > > /tmp/ccUvhCYR.s: Assembler messages: > > > > /tmp/ccUvhCYR.s:1895: Warning: ignoring changed section attributes for .data > > > > /tmp/ccUvhCYR.s: Error: 1 warning, treating warnings as errors > > > > > > Can you provide a sample .config that DOES build correctly with > > > XIP_KERNEL enabled + this patch? My first attempt yields some other > > > failures I don't care to fixup right now... > > > > > > Anyway, I don't doubt you have a good fix here, so I can probably take > > > it. Any review from others would be welcome though. > > > > I found the config in the attachment in my logs. > > Thanks... > > > To get this config working, I also needed this hunk from my set of > > old unsubmitted patches: > > ...but, does anyone care about XIP / MTD_XIP then, if the first two > examples we have both have long-standing build issues? > Probably not. I just checked the third user (omap1), and it seems that one has been broken since 2009 with 941132606c76 ("OMAP: Remove OMAP_IO_ADDRESS, use OMAP1_IO_ADDRESS and OMAP2_IO_ADDRESS instead"), when Tony replaced the inline omap_readl() with an extern function, thus breaking the implementation of xip_irqpending() that must be inlined. The other two have apparently been broken since 2011, by other patches that also broke compilation. Arnd