All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian Norris <computersforpeace@gmail.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: David Woodhouse <dwmw2@infradead.org>,
	linux-arm-kernel@lists.infradead.org, linux-arch@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-mtd@lists.infradead.org
Subject: Re: [PATCH] mtd: only use __xipram annotation when XIP_KERNEL is set
Date: Fri, 4 Mar 2016 16:22:03 -0800	[thread overview]
Message-ID: <20160305002203.GF55664@google.com> (raw)
In-Reply-To: <5158260.vK2YuWzYIn@wuerfel>

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?

Regards,
Brian

> diff --git a/arch/arm/mach-sa1100/include/mach/mtd-xip.h b/arch/arm/mach-sa1100/include/mach/mtd-xip.h
> index b3d684098fbf..cb76096a2e36 100644
> --- a/arch/arm/mach-sa1100/include/mach/mtd-xip.h
> +++ b/arch/arm/mach-sa1100/include/mach/mtd-xip.h
> @@ -20,7 +20,7 @@
>  #define xip_irqpending()	(ICIP & ICMR)
>  
>  /* we sample OSCR and convert desired delta to usec (1/4 ~= 1000000/3686400) */
> -#define xip_currtime()		(OSCR)
> -#define xip_elapsed_since(x)	(signed)((OSCR - (x)) / 4)
> +#define xip_currtime()		readl_relaxed(OSCR)
> +#define xip_elapsed_since(x)	(signed)((readl_relaxed(OSCR) - (x)) / 4)
>  
>  #endif /* __ARCH_SA1100_MTD_XIP_H__ */
> 
> 	Arnd

WARNING: multiple messages have this Message-ID (diff)
From: computersforpeace@gmail.com (Brian Norris)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] mtd: only use __xipram annotation when XIP_KERNEL is set
Date: Fri, 4 Mar 2016 16:22:03 -0800	[thread overview]
Message-ID: <20160305002203.GF55664@google.com> (raw)
In-Reply-To: <5158260.vK2YuWzYIn@wuerfel>

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?

Regards,
Brian

> diff --git a/arch/arm/mach-sa1100/include/mach/mtd-xip.h b/arch/arm/mach-sa1100/include/mach/mtd-xip.h
> index b3d684098fbf..cb76096a2e36 100644
> --- a/arch/arm/mach-sa1100/include/mach/mtd-xip.h
> +++ b/arch/arm/mach-sa1100/include/mach/mtd-xip.h
> @@ -20,7 +20,7 @@
>  #define xip_irqpending()	(ICIP & ICMR)
>  
>  /* we sample OSCR and convert desired delta to usec (1/4 ~= 1000000/3686400) */
> -#define xip_currtime()		(OSCR)
> -#define xip_elapsed_since(x)	(signed)((OSCR - (x)) / 4)
> +#define xip_currtime()		readl_relaxed(OSCR)
> +#define xip_elapsed_since(x)	(signed)((readl_relaxed(OSCR) - (x)) / 4)
>  
>  #endif /* __ARCH_SA1100_MTD_XIP_H__ */
> 
> 	Arnd

  reply	other threads:[~2016-03-05  0:22 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-25 15:41 [PATCH] mtd: only use __xipram annotation when XIP_KERNEL is set Arnd Bergmann
2016-01-25 15:41 ` Arnd Bergmann
2016-03-05  0:02 ` Brian Norris
2016-03-05  0:02   ` Brian Norris
2016-03-05  0:10   ` Brian Norris
2016-03-05  0:10     ` Brian Norris
2016-03-05  0:24     ` Arnd Bergmann
2016-03-05  0:24       ` Arnd Bergmann
2016-03-05  0:24       ` Arnd Bergmann
2016-03-05  8:45       ` Robert Jarzmik
2016-03-05  8:45         ` Robert Jarzmik
2016-03-06 19:56         ` Arnd Bergmann
2016-03-06 19:56           ` Arnd Bergmann
2016-03-05  0:19   ` Arnd Bergmann
2016-03-05  0:19     ` Arnd Bergmann
2016-03-05  0:22     ` Brian Norris [this message]
2016-03-05  0:22       ` Brian Norris
2016-03-05  0:28       ` David Woodhouse
2016-03-05  0:28         ` David Woodhouse
2016-03-05  0:43         ` Brian Norris
2016-03-05  0:43           ` Brian Norris
2016-03-17 15:56           ` Arnd Bergmann
2016-03-17 15:56             ` Arnd Bergmann
2016-03-05  0:33       ` Arnd Bergmann
2016-03-05  0:33         ` Arnd Bergmann
2016-03-05  0:33         ` Arnd Bergmann
2016-03-07 16:43         ` Tony Lindgren
2016-03-07 16:43           ` Tony Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160305002203.GF55664@google.com \
    --to=computersforpeace@gmail.com \
    --cc=arnd@arndb.de \
    --cc=dwmw2@infradead.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.