[PATCH 8/9] [HACK] ARM: imx: work around v7_cpu_resume link error
Russell King - ARM Linux
linux at arm.linux.org.uk
Fri Feb 15 06:13:06 EST 2013
On Fri, Feb 15, 2013 at 11:05:14AM +0000, Arnd Bergmann wrote:
> $ size obj-tmp/vmlinux -A
> obj-tmp/vmlinux :
> section size addr
> .head.text 504 3221258240
> .text 32707336 3221258752
> .text.head 8 3253966088
Interesting... I wonder if that should be .head.text, or maybe just .text.
Looking at iMX, it's just the secondary startup, which is calling into
.head.text, so it would be much safer given the size of the .text segment
for it to be in .head.text.
> The .text section alone is just short of 32MB.
I suspect when it does go over that, we'll see a lot more link time
failures due to the 'bl' instructions failing to encode their PC relative
jumps. The only solution then will be to switch everything to use the
less efficient long jumps (load address from literal pool, bx) which'll
also need much of the asm changed. That also brings up the question
whether we want to penalize the kernel performance just to make
allyesconfig work... I guess we can make it a compile time option, which
of course allyesconfig will automatically enable. I suspect we'll see
a lot of people mistakenly enabling it too though.
More information about the linux-arm-kernel
mailing list