summaryrefslogtreecommitdiffstats
path: root/fs/hfsplus/tables.c
diff options
context:
space:
mode:
authorAlexey Dobriyan <adobriyan@gmail.com>2020-01-30 22:16:58 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2020-01-31 10:30:41 -0800
commit03c6d723eeac2d7beaa6d9682768469659088d77 (patch)
tree2fe53c5347409622604b4abde6b52d6f53564bbe /fs/hfsplus/tables.c
parenta62c5b1b6647ea069b8a23cb8edb7925dea89dd8 (diff)
downloadlinux-03c6d723eeac2d7beaa6d9682768469659088d77.tar.gz
linux-03c6d723eeac2d7beaa6d9682768469659088d77.tar.bz2
linux-03c6d723eeac2d7beaa6d9682768469659088d77.zip
fs/binfmt_elf.c: better codegen around current->mm
"current->mm" pointer is stable in general except few cases one of which execve(2). Compiler can't treat is as stable but it _is_ stable most of the time. During ELF loading process ->mm becomes stable right after flush_old_exec(). Help compiler by caching current->mm, otherwise it continues to refetch it. add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-141 (-141) Function old new delta elf_core_dump 5062 5039 -23 load_elf_binary 5426 5308 -118 Note: other cases are left as is because it is either pessimisation or no change in binary size. Link: http://lkml.kernel.org/r/20191215124755.GB21124@avx2 Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Reviewed-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/hfsplus/tables.c')
0 files changed, 0 insertions, 0 deletions