arm64: enable context tracking
authorLarry Bassel <larry.bassel@linaro.org>
Fri, 30 May 2014 19:34:15 +0000 (12:34 -0700)
committerCatalin Marinas <catalin.marinas@arm.com>
Thu, 10 Jul 2014 09:10:21 +0000 (10:10 +0100)
commit6c81fe7925cc4c42de49e17be21eb86d1173c3a7
tree386156dd2370309268d9455d09782dc0638428a0
parent6ab6463aeb5fbc75fa3227befb508fc33b34dbf1
arm64: enable context tracking

Make calls to ct_user_enter when the kernel is exited
and ct_user_exit when the kernel is entered (in el0_da,
el0_ia, el0_svc, el0_irq and all of the "error" paths).

These macros expand to function calls which will only work
properly if el0_sync and related code has been rearranged
(in a previous patch of this series).

The calls to ct_user_exit are made after hw debugging has been
enabled (enable_dbg_and_irq).

The call to ct_user_enter is made at the beginning of the
kernel_exit macro.

This patch is based on earlier work by Kevin Hilman.
Save/restore optimizations were also done by Kevin.

Acked-by: Will Deacon <will.deacon@arm.com>
Reviewed-by: Kevin Hilman <khilman@linaro.org>
Tested-by: Kevin Hilman <khilman@linaro.org>
Signed-off-by: Larry Bassel <larry.bassel@linaro.org>
Signed-off-by: Kevin Hilman <khilman@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/Kconfig
arch/arm64/include/asm/thread_info.h
arch/arm64/kernel/entry.S