]> git.baikalelectronics.ru Git - kernel.git/commit
arm64: Use daifflag_restore after bp_hardening
authorJulien Thierry <julien.thierry@arm.com>
Tue, 28 Aug 2018 15:51:15 +0000 (16:51 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Wed, 3 Oct 2018 15:12:21 +0000 (16:12 +0100)
commitb704544ce531251cddb3b1515f097908ba05b2ba
tree25254503623e42c0689570c1a59f3f71d12a4dbd
parentfd2fb499162ea66cf83d0adff05d28e4d0bcd1d8
arm64: Use daifflag_restore after bp_hardening

For EL0 entries requiring bp_hardening, daif status is kept at
DAIF_PROCCTX_NOIRQ until after hardening has been done. Then interrupts
are enabled through local_irq_enable().

Before using local_irq_* functions, daifflags should be properly restored
to a state where IRQs are enabled.

Enable IRQs by restoring DAIF_PROCCTX state after bp hardening.

Acked-by: James Morse <james.morse@arm.com>
Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/mm/fault.c