On Fri, 19 Jan 2024 15:58:01 -0500 Audra Mitchell <audra@xxxxxxxxxx> 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 <adam@xxxxxxxxxxxx> Fixes: 4f2930c6718a ("selftests/vm: only run 128TBswitch with 5-level paging") Cc: <stable@xxxxxxxxxxxxxxx> 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