From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com
Subject: [modules:ppavlu-module-include 36/37] arch/arm64/include/asm/module.h:48:16: error: implicit declaration of function 'cpus_have_final_cap'
Date: Wed, 19 Aug 2026 14:59:11 +0200 [thread overview]
Message-ID: <202608191435.CTMWvnpe-lkp@intel.com> (raw)
::::::
:::::: Manual check reason: "low confidence bisect report"
::::::
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: Luis Chamberlain <mcgrof@kernel.org>
CC: Petr Pavlu <petr.pavlu@suse.com>
CC: Sami Tolvanen <samitolvanen@google.com>
CC: Daniel Gomez <da.gomez@kernel.org>
CC: linux-modules@vger.kernel.org
TO: Petr Pavlu <petr.pavlu@suse.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/modules/linux.git ppavlu-module-include
head: fcbfd3cbe0a054838436812cc0b664f71ba1d0a4
commit: acb4d9bafad10e9712a74d71304a4f3a404eb4ec [36/37] WIP: module: Clean up includes in linux/module.h
:::::: branch date: 2 hours ago
:::::: commit date: 2 hours ago
config: arm64-allnoconfig-bpf (https://download.01.org/0day-ci/archive/20260819/202608191435.CTMWvnpe-lkp@intel.com/config)
compiler: aarch64-linux-gnu-gcc (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260819/202608191435.CTMWvnpe-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/r/202608191435.CTMWvnpe-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from include/linux/module.h:28,
from ../../../drivers/nvdimm/namespace_devs.c:6:
arch/arm64/include/asm/module.h: In function 'is_forbidden_offset_for_adrp':
>> arch/arm64/include/asm/module.h:48:16: error: implicit declaration of function 'cpus_have_final_cap' [-Wimplicit-function-declaration]
48 | return cpus_have_final_cap(ARM64_WORKAROUND_843419) &&
| ^~~~~~~~~~~~~~~~~~~
arch/arm64/include/asm/module.h: In function 'find_section':
>> arch/arm64/include/asm/module.h:62:21: error: implicit declaration of function 'strcmp' [-Wimplicit-function-declaration]
62 | if (strcmp(name, secstrs + s->sh_name) == 0)
| ^~~~~~
arch/arm64/include/asm/module.h:9:1: note: include '<string.h>' or provide a declaration of 'strcmp'
8 | #include <asm-generic/module.h>
+++ |+#include <string.h>
9 |
In file included from arch/arm64/include/asm/processor.h:40,
from include/linux/sched.h:13,
from include/linux/ratelimit.h:6,
from include/linux/dev_printk.h:16,
from include/linux/device.h:15,
from ../../../drivers/nvdimm/namespace_devs.c:7:
arch/arm64/include/asm/cpufeature.h: At top level:
>> arch/arm64/include/asm/cpufeature.h:519:29: error: conflicting types for 'cpus_have_final_cap'; have 'bool(int)' {aka '_Bool(int)'}
519 | static __always_inline bool cpus_have_final_cap(int num)
| ^~~~~~~~~~~~~~~~~~~
arch/arm64/include/asm/module.h:48:16: note: previous implicit declaration of 'cpus_have_final_cap' with type 'int()'
48 | return cpus_have_final_cap(ARM64_WORKAROUND_843419) &&
| ^~~~~~~~~~~~~~~~~~~
--
In file included from include/linux/module.h:28,
from libnvdimm_test.c:4:
arch/arm64/include/asm/module.h: In function 'is_forbidden_offset_for_adrp':
>> arch/arm64/include/asm/module.h:48:16: error: implicit declaration of function 'cpus_have_final_cap' [-Wimplicit-function-declaration]
48 | return cpus_have_final_cap(ARM64_WORKAROUND_843419) &&
| ^~~~~~~~~~~~~~~~~~~
arch/arm64/include/asm/module.h: In function 'find_section':
>> arch/arm64/include/asm/module.h:62:21: error: implicit declaration of function 'strcmp' [-Wimplicit-function-declaration]
62 | if (strcmp(name, secstrs + s->sh_name) == 0)
| ^~~~~~
arch/arm64/include/asm/module.h:9:1: note: include '<string.h>' or provide a declaration of 'strcmp'
8 | #include <asm-generic/module.h>
+++ |+#include <string.h>
9 |
vim +/cpus_have_final_cap +48 arch/arm64/include/asm/module.h
7e8b9c1d2e2f5f Ard Biesheuvel 2017-11-20 45
bdb85cd1d20669 Ard Biesheuvel 2018-11-22 46 static inline bool is_forbidden_offset_for_adrp(void *place)
7e8b9c1d2e2f5f Ard Biesheuvel 2017-11-20 47 {
0a285dfe875d52 Mark Rutland 2023-10-16 @48 return cpus_have_final_cap(ARM64_WORKAROUND_843419) &&
bdb85cd1d20669 Ard Biesheuvel 2018-11-22 49 ((u64)place & 0xfff) >= 0xff8;
7e8b9c1d2e2f5f Ard Biesheuvel 2017-11-20 50 }
7e8b9c1d2e2f5f Ard Biesheuvel 2017-11-20 51
bdb85cd1d20669 Ard Biesheuvel 2018-11-22 52 struct plt_entry get_plt_entry(u64 dst, void *pc);
7e8b9c1d2e2f5f Ard Biesheuvel 2017-11-20 53
b3adc3844e1ded Joey Gouly 2022-08-30 54 static inline const Elf_Shdr *find_section(const Elf_Ehdr *hdr,
b3adc3844e1ded Joey Gouly 2022-08-30 55 const Elf_Shdr *sechdrs,
b3adc3844e1ded Joey Gouly 2022-08-30 56 const char *name)
5a3ae7b314a225 Ard Biesheuvel 2019-04-07 57 {
b3adc3844e1ded Joey Gouly 2022-08-30 58 const Elf_Shdr *s, *se;
b3adc3844e1ded Joey Gouly 2022-08-30 59 const char *secstrs = (void *)hdr + sechdrs[hdr->e_shstrndx].sh_offset;
b3adc3844e1ded Joey Gouly 2022-08-30 60
b3adc3844e1ded Joey Gouly 2022-08-30 61 for (s = sechdrs, se = sechdrs + hdr->e_shnum; s < se; s++) {
b3adc3844e1ded Joey Gouly 2022-08-30 @62 if (strcmp(name, secstrs + s->sh_name) == 0)
b3adc3844e1ded Joey Gouly 2022-08-30 63 return s;
b3adc3844e1ded Joey Gouly 2022-08-30 64 }
b3adc3844e1ded Joey Gouly 2022-08-30 65
b3adc3844e1ded Joey Gouly 2022-08-30 66 return NULL;
5a3ae7b314a225 Ard Biesheuvel 2019-04-07 67 }
5a3ae7b314a225 Ard Biesheuvel 2019-04-07 68
:::::: The code at line 48 was first introduced by commit
:::::: 0a285dfe875d5206da10c3d00564727f9482a9dd arm64: Avoid cpus_have_const_cap() for ARM64_WORKAROUND_843419
:::::: TO: Mark Rutland <mark.rutland@arm.com>
:::::: CC: Catalin Marinas <catalin.marinas@arm.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2026-08-19 13:00 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=202608191435.CTMWvnpe-lkp@intel.com \
--to=lkp@intel.com \
--cc=oe-kbuild@lists.linux.dev \
/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.