OSDN Git Service

arm64: svc: Ensure hardirq tracing is updated before return
authorWill Deacon <will.deacon@arm.com>
Mon, 30 Jul 2018 16:43:39 +0000 (17:43 +0100)
committerWill Deacon <will.deacon@arm.com>
Mon, 30 Jul 2018 16:43:39 +0000 (17:43 +0100)
commitefd112353bf7c0f9d50f928b449ea9da0ee9554b
tree6fc4a370843a96e0babaaa99a0a8cc349d2185e5
parentba70ffa7d20d771ae47a1597799da84980aafe15
arm64: svc: Ensure hardirq tracing is updated before return

We always run userspace with interrupts enabled, but with the recent
conversion of the syscall entry/exit code to C, we don't inform the
hardirq tracing code that interrupts are about to become enabled by
virtue of restoring the EL0 SPSR.

This patch ensures that trace_hardirqs_on() is called on the syscall
return path when we return to the assembly code with interrupts still
disabled.

Fixes: f37099b6992a ("arm64: convert syscall trace logic to C")
Reported-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/kernel/syscall.c