kselftest/arm64/mte: Check MTE_FAR feature is supported
To run the MTE_FAR test when cpu supports MTE_FAR feature, check the MTE_FAR feature is supported in mte test. Signed-off-by: Yeoreum Yun <yeoreum.yun@arm.com> Reviewed-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20250618084513.1761345-7-yeoreum.yun@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
parent
cfafa517c9
commit
2e3e356560
|
|
@ -26,6 +26,7 @@
|
|||
#define INIT_BUFFER_SIZE 256
|
||||
|
||||
struct mte_fault_cxt cur_mte_cxt;
|
||||
bool mtefar_support;
|
||||
static unsigned int mte_cur_mode;
|
||||
static unsigned int mte_cur_pstate_tco;
|
||||
|
||||
|
|
@ -325,12 +326,15 @@ int mte_switch_mode(int mte_option, unsigned long incl_mask)
|
|||
int mte_default_setup(void)
|
||||
{
|
||||
unsigned long hwcaps2 = getauxval(AT_HWCAP2);
|
||||
unsigned long hwcaps3 = getauxval(AT_HWCAP3);
|
||||
unsigned long en = 0;
|
||||
int ret;
|
||||
|
||||
if (!(hwcaps2 & HWCAP2_MTE))
|
||||
ksft_exit_skip("MTE features unavailable\n");
|
||||
|
||||
mtefar_support = !!(hwcaps3 & HWCAP3_MTE_FAR);
|
||||
|
||||
/* Get current mte mode */
|
||||
ret = prctl(PR_GET_TAGGED_ADDR_CTRL, en, 0, 0, 0);
|
||||
if (ret < 0) {
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ struct mte_fault_cxt {
|
|||
};
|
||||
|
||||
extern struct mte_fault_cxt cur_mte_cxt;
|
||||
extern bool mtefar_support;
|
||||
|
||||
/* MTE utility functions */
|
||||
void mte_default_handler(int signum, siginfo_t *si, void *uc);
|
||||
|
|
|
|||
Loading…
Reference in New Issue