Re: [kbuild-all] Re: arceb-elf-ld: include/linux/leds.h:193: undefined reference to `devm_led_classdev_register_ext'
From: Randy Dunlap
Date: Sat Oct 10 2020 - 19:11:24 EST
On 10/10/20 12:13 AM, Rong Chen wrote:
>
>
> On 10/10/20 11:49 AM, Randy Dunlap wrote:
>> On 10/9/20 8:19 PM, Rong Chen wrote:
>>>
>>> On 10/8/20 3:15 PM, Pavel Machek wrote:
>>>> Hi!
>>>>
>>>>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>>>>> head: c85fb28b6f999db9928b841f63f1beeb3074eeca
>>>>> commit: 92a81562e695628086acb92f95090ab09d9b9ec0 leds: lp55xx: Add multicolor framework support to lp55xx
>>>>> date: 3 months ago
>>>>> config: arc-randconfig-r035-20201008 (attached as .config)
>>>>> compiler: arceb-elf-gcc (GCC) 9.3.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=92a81562e695628086acb92f95090ab09d9b9ec0
>>>>> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>>>>> git fetch --no-tags linus master
>>>>> git checkout 92a81562e695628086acb92f95090ab09d9b9ec0
>>>>> # save the attached .config to linux build tree
>>>>> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arc
>>>>>
>>>>> If you fix the issue, kindly add following tag as appropriate
>>>>> Reported-by: kernel test robot <lkp@xxxxxxxxx>
>>>> Hi robot. Do you have human around to talk to?
>>>>
>>>>> All errors (new ones prefixed by >>):
>>>>>
>>>>> arceb-elf-ld: lib/stackdepot.o: in function `filter_irq_stacks':
>>>>> lib/stackdepot.c:331: undefined reference to `__irqentry_text_start'
>>>>> arceb-elf-ld: lib/stackdepot.c:331: undefined reference to `__irqentry_text_start'
>>>>> arceb-elf-ld: lib/stackdepot.o: in function `in_irqentry_text':
>>>>> lib/stackdepot.c:323: undefined reference to `__irqentry_text_end'
>>>>> arceb-elf-ld: lib/stackdepot.c:323: undefined reference to `__irqentry_text_end'
>>>>> arceb-elf-ld: lib/stackdepot.c:324: undefined reference to `__softirqentry_text_start'
>>>>> arceb-elf-ld: lib/stackdepot.c:324: undefined reference to `__softirqentry_text_start'
>>>>> arceb-elf-ld: lib/stackdepot.c:325: undefined reference to `__softirqentry_text_end'
>>>>> arceb-elf-ld: lib/stackdepot.c:325: undefined reference to
>>>> What is going on here? Did you just start testing arc? The commit
>>>> is... really old.
>>>>
>>> Hi Pavel,
>>>
>>> Only this error "arceb-elf-ld: include/linux/leds.h:193: undefined reference to `devm_led_classdev_register_ext'" was found in this commit,
>>> other errors are for reference only, and the test config is a rand config, so it's discovered by chance.
>> Hi,
>> Just for the record, I could not reproduce the build error
>> with the config file that was provided.
>>
>
> Hi Randy,
>
> I can reproduce it with the above reproduce steps:
>
> ➜ linux git:(92a81562e695) ✗ make CROSS_COMPILE=/home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf- ARCH=arc
> CALL scripts/checksyscalls.sh
> CALL scripts/atomic/check-atomics.sh
> CHK include/generated/compile.h
> GEN .version
> CHK include/generated/compile.h
> UPD include/generated/compile.h
> CC init/version.o
> AR init/built-in.a
> LD vmlinux.o
> MODPOST vmlinux.symvers
> MODINFO modules.builtin.modinfo
> GEN modules.builtin
> LD .tmp_vmlinux.kallsyms1
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: lib/stackdepot.o: in function `filter_irq_stacks':
> /home/nfs/linux/lib/stackdepot.c:331: undefined reference to `__irqentry_text_start'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: /home/nfs/linux/lib/stackdepot.c:331: undefined reference to `__irqentry_text_start'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: lib/stackdepot.o: in function `in_irqentry_text':
> /home/nfs/linux/lib/stackdepot.c:323: undefined reference to `__irqentry_text_end'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: /home/nfs/linux/lib/stackdepot.c:323: undefined reference to `__irqentry_text_end'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: /home/nfs/linux/lib/stackdepot.c:324: undefined reference to `__softirqentry_text_start'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: /home/nfs/linux/lib/stackdepot.c:324: undefined reference to `__softirqentry_text_start'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: /home/nfs/linux/lib/stackdepot.c:325: undefined reference to `__softirqentry_text_end'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: /home/nfs/linux/lib/stackdepot.c:325: undefined reference to `__softirqentry_text_end'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: drivers/leds/leds-lp55xx-common.o: in function `devm_led_classdev_register':
> /home/nfs/linux/./include/linux/leds.h:193: undefined reference to `devm_led_classdev_register_ext'
> /home/nfs/0day/gcc-9.3.0-nolibc/arceb-elf/bin/arceb-elf-ld: /home/nfs/linux/./include/linux/leds.h:193: undefined reference to `devm_led_classdev_register_ext'
> make: *** [Makefile:1139: vmlinux] Error 1
Oh, I guess I see the difference. The bot is checking out a commit
that is 3 months old:
git fetch --no-tags linus master
git checkout 92a81562e695628086acb92f95090ab09d9b9ec0
So it's a bit like Pavel said, that commit is old. I can't say that I care
as long as current mainline builds, and I have already verified that it does.
cheers.
--
~Randy