|
|
Subscribe / Log in / New account

arm64: Support of PAuth QARMA3 architected algorithm

From:  Vladimir Murzin <vladimir.murzin-AT-arm.com>
To:  linux-arm-kernel-AT-lists.infradead.org
Subject:  [PATCH v3 0/3] arm64: Support of PAuth QARMA3 architected algorithm
Date:  Thu, 24 Feb 2022 12:49:49 +0000
Message-ID:  <20220224124952.119612-1-vladimir.murzin@arm.com>
Cc:  maz-AT-kernel.org, catalin.marinas-AT-arm.com, mark.rutland-AT-arm.com, will-AT-kernel.org
Archive-link:  Article

QARMA3 is relaxed version of the QARMA5 algorithm which expected to
reduce the latency of calculation while still delivering a suitable
level of security.

Feature advertised via a new ID fields in ID_AA64ISAR2_EL1 [1], so we
need to teach the kernel to identify this.

[1] https://developer.arm.com/documentation/ddi0601/2021-12/A...


Changelog:

  v1 -> v2
     - Removed unintended whitespace change in sysreg.h
     - FTR_ALIAS_OPTION_LEN now accounts null terminator
     - Extract only APA3 bits from ID_AA64ISAR2_APA3_SHIFT (in
       contrast to id_aa64isar1_el1 where both APA and API bits
       are extracted) in asm_pointer_auth.h
  v2 -> v3
     - Removed WARN_ON(s) (per Will)
     - Rebased on 5.17-rc5

Thanks!

Vladimir Murzin (3):
  arm64: cpufeature: Account min_field_value when cheking secondaries
    for PAuth
  arm64: cpufeature: Mark existing PAuth architected algorithm as QARMA5
  arm64: Add support of PAuth QARMA3 architected algorithm

 arch/arm64/include/asm/asm_pointer_auth.h      |  3 ++
 arch/arm64/include/asm/cpufeature.h            |  1 +
 arch/arm64/include/asm/kvm_hyp.h               |  1 +
 arch/arm64/include/asm/sysreg.h                | 12 ++++++
 arch/arm64/kernel/cpufeature.c                 | 59 ++++++++++++++++++++++----
 arch/arm64/kernel/idreg-override.c             | 16 ++++++-
 arch/arm64/kvm/arm.c                           |  1 +
 arch/arm64/kvm/hyp/include/nvhe/fixed_config.h |  5 +++
 arch/arm64/kvm/hyp/nvhe/sys_regs.c             | 14 ++++++
 arch/arm64/kvm/sys_regs.c                      |  5 +++
 arch/arm64/tools/cpucaps                       |  6 ++-
 11 files changed, 110 insertions(+), 13 deletions(-)

-- 
2.7.4


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel


Copyright © 2022, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds