diff options
author | Alexey Dobriyan <[email protected]> | 2019-03-11 23:28:51 -0700 |
---|---|---|
committer | Linus Torvalds <[email protected]> | 2019-03-12 10:04:01 -0700 |
commit | d5a572a4cb1e484d8d8c79bdfd16aaa18fa1470b (patch) | |
tree | 60509f727ebe752228ef7a7f3f19b704ae6a5780 /tools/perf/scripts/python/export-to-postgresql.py | |
parent | b5420237ec817b0b5f729a674c81ace0865c3b3b (diff) |
proc: calculate end pointer for /proc/*/* lookup at compile time
Compilers like to transform loops like
for (i = 0; i < n; i++) {
[use p[i]]
}
into
for (p = p0; p < end; p++) {
...
}
Do it by hand, so that it results in overall simpler loop
and smaller code.
Space savings:
$ ./scripts/bloat-o-meter ../vmlinux-001 ../obj/vmlinux
add/remove: 0/0 grow/shrink: 2/1 up/down: 4/-9 (-5)
Function old new delta
proc_tid_base_lookup 17 19 +2
proc_tgid_base_lookup 17 19 +2
proc_pident_lookup 179 170 -9
The same could be done to proc_pident_readdir(), but the code becomes
bigger for some reason.
[[email protected]: merge fix for proc_pident_lookup() API change]
Link: http://lkml.kernel.org/r/[email protected]
Link: http://lkml.kernel.org/r/20190114200422.GB9680@avx2
Signed-off-by: Alexey Dobriyan <[email protected]>
Signed-off-by: Stephen Rothwell <[email protected]>
Cc: James Morris <[email protected]>
Cc: Alexey Dobriyan <[email protected]>
Cc: Casey Schaufler <[email protected]>
Cc: Kees Cook <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions