arm64: assembler: add conditional cache fixups
authorMark Rutland <mark.rutland@arm.com>
Mon, 24 May 2021 08:29:45 +0000 (09:29 +0100)
committerWill Deacon <will@kernel.org>
Tue, 25 May 2021 18:27:48 +0000 (19:27 +0100)
commitd11b187760f52480dd83bda0429ee3c94e542b1d
tree88cb52ce7adc3db8fe2a89c8b0d5529a76405f15
parente89d6cc51034998607502cd3899173bfa7189571
arm64: assembler: add conditional cache fixups

It would be helpful if we could use both `dcache_by_line_op` and
`invalidate_icache_by_line` for user memory without accidentally fixing
up unexpected faults when performing maintenance on kernel addresses.

Let's make this possible by having both macros take an optional fixup
label, and only generating an extable entry if a label is provided.

At the same time, let's clean up the labels used to be globally unique
using \@ as we do for other macros.

There should be no functional change as a result of this patch.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Fuad Tabba <tabba@google.com>
Cc: Ard Biesheuvel <aedb@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Fuad Tabba <tabba@google.com>
Cc: Will Deacon <will@kernel.org>
Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20210524083001.2586635-3-tabba@google.com
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/asm/assembler.h