On Fri, Aug 02, 2024 at 10:57:54PM GMT, Mark Brown wrote: > Currently the get-reg-list test uses directly specified numeric values to > define system registers to validate. Since we already have a macro which > allows us to use the generated system register definitions from the main > kernel easily let's update all the registers where we have specified the > name in a comment to just use that macro. This reduces the number of > places where we need to validate the name to number mapping. > > This conversion was done with the sed command: > > sed -i -E 's-ARM64_SYS_REG.*/\* (.*) \*/-KVM_ARM64_SYS_REG(SYS_\1),-' tools/testing/selftests/kvm/aarch64/get-reg-list.c > > We still have a number of numerically specified registers, some of these > are reserved registers without defined names (eg, unallocated ID registers) > and others don't have kernel macro definitions yet. FWIW, the "ARM64_SYS_REG(...encoding...), /* NAME */" format was intentional. The idea was that when get-reg-list outputs new or missing registers it discovers, or the user lists registers with --list, the best it can do is output "ARM64_SYS_REG(...encoding...)". Putting that format directly into the test enabled copy+paste of the list output into a test case. However, the lack of names did lead to scripting the generation of the name comments, which means it wasn't a direct copy+paste anyway. The other benefit of the format was being able to directly grep the test for the 'missing' registers. Anyway, maybe always going through asm/sysreg.h with greps of '...encoding...' is the better approach. Thanks, drew