diff options
author | Kris Van Hees <kris.van.hees@oracle.com> | 2024-09-06 16:45:02 +0200 |
---|---|---|
committer | Masahiro Yamada <masahiroy@kernel.org> | 2024-09-10 11:36:10 +0200 |
commit | 23d93aa4b3b90b6e3dc8e6b6bb36580c1068bc07 (patch) | |
tree | 1fcbfc36388fe7aa26860b6cf09bebe7808fbdcb /.cocciconfig | |
parent | scripts: subarch.include: fix SUBARCH on macOS hosts (diff) | |
download | linux-23d93aa4b3b90b6e3dc8e6b6bb36580c1068bc07.tar.xz linux-23d93aa4b3b90b6e3dc8e6b6bb36580c1068bc07.zip |
kbuild: add mod(name,file)_flags to assembler flags for module objects
In order to create the file at build time, modules.builtin.ranges, that
contains the range of addresses for all built-in modules, there needs to
be a way to identify what code is compiled into modules.
To identify what code is compiled into modules during a kernel build,
one can look for the presence of the -DKBUILD_MODFILE and -DKBUILD_MODNAME
options in the compile command lines. A simple grep in .*.cmd files for
those options is sufficient for this.
Unfortunately, these options are only passed when compiling C source files.
Various modules also include objects built from assembler source, and these
options are not passed in that case.
Adding $(modfile_flags) to modkern_aflags (similar to modkern_cflags), and
adding $(modname_flags) to a_flags (similar to c_flags) makes it possible
to identify which objects are compiled into modules for both C and
assembler source files. While KBUILD_MODFILE is sufficient to generate
the modules ranges data, KBUILD_MODNAME is passed as well for consistency
with the C source code case.
Signed-off-by: Kris Van Hees <kris.van.hees@oracle.com>
Reviewed-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Tested-by: Sam James <sam@gentoo.org>
Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
Tested-by: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to '.cocciconfig')
0 files changed, 0 insertions, 0 deletions