On Fri, 19 Jan 2024 15:58:01 -0500 Audra Mitchell <[email protected]> wrote:

> In order for the page table level 5 to be in use, the CPU must have the
> setting enabled in addition to the CONFIG option. Check for the flag to be
> set to avoid false test failures on systems that do not have this cpu flag
> set.
> 

Thanks.

I'll add

Cc: Adam Sindelar <[email protected]>
Fixes: 4f2930c6718a ("selftests/vm: only run 128TBswitch with 5-level paging")
Cc: <[email protected]>

A more complete description of these "test failures" would be helpful
please.

> --- a/tools/testing/selftests/mm/va_high_addr_switch.sh
> +++ b/tools/testing/selftests/mm/va_high_addr_switch.sh
> @@ -29,9 +29,15 @@ check_supported_x86_64()
>       # See man 1 gzip under '-f'.
>       local pg_table_levels=$(gzip -dcfq "${config}" | grep PGTABLE_LEVELS | 
> cut -d'=' -f 2)
>  
> +     local cpu_supports_pl5=$(awk '/^flags/ {if (/la57/) {print 0;}
> +             else {print 1}; exit}' /proc/cpuinfo 2>/dev/null)
> +
>       if [[ "${pg_table_levels}" -lt 5 ]]; then
>               echo "$0: PGTABLE_LEVELS=${pg_table_levels}, must be >= 5 to 
> run this test"
>               exit $ksft_skip
> +     elif [[ "${cpu_supports_pl5}" -ne 0 ]]; then
> +             echo "$0: CPU does not have the necessary la57 flag to support 
> page table level 5"
> +             exit $ksft_skip
>       fi
>  }
>  
> -- 
> 2.43.0

Reply via email to