2022-02-27 09:51:40

by kernel test robot

[permalink] [raw]
Subject: {standard input}:2277: Error: pcrel offset for branch to .LS000B too far (0x3c)

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 2293be58d6a18cab800e25e42081bacb75c05752
commit: cf536e185869d4815d506e777bcca6edd9966a6e Makefile: extend 32B aligned debug option to 64B aligned
date: 9 months ago
config: csky-randconfig-r003-20220227 (https://download.01.org/0day-ci/archive/20220227/[email protected]/config)
compiler: csky-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cf536e185869d4815d506e777bcca6edd9966a6e
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout cf536e185869d4815d506e777bcca6edd9966a6e
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=csky SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>

All errors (new ones prefixed by >>):

{standard input}: Assembler messages:
>> {standard input}:2277: Error: pcrel offset for branch to .LS000B too far (0x3c)

Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for LOCKDEP
Depends on DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT && (FRAME_POINTER || MIPS || PPC || S390 || MICROBLAZE || ARM || ARC || X86)
Selected by
- PROVE_LOCKING && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
- LOCK_STAT && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT
- DEBUG_LOCK_ALLOC && DEBUG_KERNEL && LOCK_DEBUGGING_SUPPORT

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]


2022-02-28 09:44:05

by Feng Tang

[permalink] [raw]
Subject: Re: {standard input}:2277: Error: pcrel offset for branch to .LS000B too far (0x3c)

On Sun, Feb 27, 2022 at 04:29:30PM +0800, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 2293be58d6a18cab800e25e42081bacb75c05752
> commit: cf536e185869d4815d506e777bcca6edd9966a6e Makefile: extend 32B aligned debug option to 64B aligned
> date: 9 months ago
> config: csky-randconfig-r003-20220227 (https://download.01.org/0day-ci/archive/20220227/[email protected]/config)
> compiler: csky-linux-gcc (GCC) 11.2.0
> reproduce (this is a W=1 build):
> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=cf536e185869d4815d506e777bcca6edd9966a6e
> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> git fetch --no-tags linus master
> git checkout cf536e185869d4815d506e777bcca6edd9966a6e
> # save the config file to linux build tree
> mkdir build_dir
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=csky SHELL=/bin/bash
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <[email protected]>
>
> All errors (new ones prefixed by >>):
>
> {standard input}: Assembler messages:
> >> {standard input}:2277: Error: pcrel offset for branch to .LS000B too far (0x3c)

Thanks for the report! can you try this following fix?

Thanks,
Feng

---

From c386ee06e5dbc89b69a0a58edace3f54fd5e2b8f Mon Sep 17 00:00:00 2001
From: Feng Tang <[email protected]>
Date: Mon, 28 Feb 2022 09:44:04 +0800
Subject: [PATCH] lib/Kconfig.debug: add ARCH dependency for FUNCTION_ALIGNMENT
option

0Day robots reported there is compiling issue for 'csky' ARCH
when CONFIG_DEBUG_FORCE_DATA_SECTION_ALIGNED is enabled:

"
All errors (new ones prefixed by >>):

{standard input}: Assembler messages:
>> {standard input}:2277: Error: pcrel offset for branch to .LS000B too far (0x3c)
"

Which has been discussed in [1]. And as there is no solution for csky
yet, add some dependency for this config to limit it to several ARCHs
which have no compiling issue so far.

[1]. https://www.spinics.net/lists/linux-kbuild/msg30298.html

Reported-by: kernel test robot <[email protected]>
Signed-off-by: Feng Tang <[email protected]>
---
lib/Kconfig.debug | 1 +
1 file changed, 1 insertion(+)

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 14b89aa37c5c..39298958ad3a 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -417,6 +417,7 @@ config SECTION_MISMATCH_WARN_ONLY

config DEBUG_FORCE_FUNCTION_ALIGN_64B
bool "Force all function address 64B aligned" if EXPERT
+ depends on PPC || ARM || X86
help
There are cases that a commit from one domain changes the function
address alignment of other domains, and cause magic performance
--
2.27.0