Files
linux/arch/arm64/include/asm
Mark Rutland 9d84fb27fa arm64: restore get_current() optimisation
Commit c02433dd6d ("arm64: split thread_info from task stack")
inverted the relationship between get_current() and
current_thread_info(), with sp_el0 now holding the current task_struct
rather than the current thead_info. The new implementation of
get_current() prevents the compiler from being able to optimize repeated
calls to either, resulting in a noticeable penalty in some
microbenchmarks.

This patch restores the previous optimisation by implementing
get_current() in the same way as our old current_thread_info(), using a
non-volatile asm statement.

Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reported-by: Davidlohr Bueso <dbueso@suse.de>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2017-01-04 16:26:18 +00:00
..
2016-12-22 14:34:24 +01:00
2015-10-28 19:09:17 +00:00
2016-09-09 11:41:13 +01:00
2016-11-07 18:15:21 +00:00
2016-03-04 18:19:17 +00:00
2016-06-27 16:31:25 +01:00
2016-09-08 12:53:00 +02:00
2016-11-16 18:05:10 +00:00
2015-05-19 15:27:42 +01:00
2016-11-07 18:15:21 +00:00
2015-10-12 17:46:36 +01:00
2016-08-25 18:00:29 +01:00
2016-12-26 13:05:17 -05:00
2016-11-07 18:15:21 +00:00
2016-09-09 11:42:27 +01:00