diff options
author | Jack Brennen <jbrennen@google.com> | 2023-09-26 08:40:44 -0400 |
---|---|---|
committer | Masahiro Yamada <masahiroy@kernel.org> | 2023-10-03 20:25:59 +0900 |
commit | 4074532758c5c367d3fcb8d124150824a254659d (patch) | |
tree | 6855ea558308e1f2c4a92e990344ef11297cca48 /.gitignore | |
parent | 8a749fd1a8720d4619c91c8b6e7528c0a355c0aa (diff) |
modpost: Optimize symbol search from linear to binary search
Modify modpost to use binary search for converting addresses back
into symbol references. Previously it used linear search.
This change saves a few seconds of wall time for defconfig builds,
but can save several minutes on allyesconfigs.
Before:
$ make LLVM=1 -j128 allyesconfig vmlinux -s KCFLAGS="-Wno-error"
$ time scripts/mod/modpost -M -m -a -N -o vmlinux.symvers vmlinux.o
198.38user 1.27system 3:19.71elapsed
After:
$ make LLVM=1 -j128 allyesconfig vmlinux -s KCFLAGS="-Wno-error"
$ time scripts/mod/modpost -M -m -a -N -o vmlinux.symvers vmlinux.o
11.91user 0.85system 0:12.78elapsed
Signed-off-by: Jack Brennen <jbrennen@google.com>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to '.gitignore')
0 files changed, 0 insertions, 0 deletions