diff options
author | Jiyong Park <jiyong@google.com> | 2019-05-13 16:52:01 +0900 |
---|---|---|
committer | Jiyong Park <jiyong@google.com> | 2019-05-17 10:09:13 +0900 |
commit | 341b61e694a25e8e39250fd332e4b9eaecffc098 (patch) | |
tree | f39d095cf08b71a86bca1c9c1e729e629b0544c3 /libc/malloc_debug/malloc_debug.h | |
parent | b43f0b799365eab49c8f173fd3b6eef664e33e9d (diff) |
Don't resolve already resolved paths when parsing ld.config.txt
When parsing ld.config.txt, paths in *.search.paths properties are
resolved using resolved_paths(). This is causing a number of newfstatat
system calls during a process start-up and is contributing about 3.6%
of the entire linker initialization time.
Optimize the overhead by not resolving already resolved paths; resolved
paths are cached.
Bug: 132348336
Test: strace -C -e newfstatat ls shows the number of the syscalls is
reduced from 131 to 99
Test: simpleperf record --call-graph fp -f 10000000 -o /data/perf.data ls
simpleperf report -g -i /data/perf.data
shows percentage of get_paths() from 2.9% to 2.5%
Change-Id: I79823255a89f6e2a63b80c74e6768850276ab536
Diffstat (limited to 'libc/malloc_debug/malloc_debug.h')
0 files changed, 0 insertions, 0 deletions