Public bug reported: On Jammy, running 'oslat --cpu-list 2-7 --rtprio 1 --duration 600 -q' shows the following error on arm64: This architecture is not yet supported. Please implement frc() function first for oslat.
And the program stops. It looks like the first version of upstream rt-tests which supports oslat on arm64 is version v2.3: benjamin@benjamin-desktop-fedora ~/w/rt-tests (main)> git show --no-patch 7d42e803 commit 7d42e803ec498595850b6f52f57475fba81e1fa0 Author: Nicolas Saenz Julienne <[email protected]> Date: Mon Sep 13 10:39:07 2021 +0200 oslat: Add aarch64 support The callbacks are based on Linux's implementation: - CNTVCT_EL0 provides direct access to the system virtual timer[1]. - 'yield' serves as a CPU hint with similar semantics as x86's 'pause'[2]. In contrast with the kernel's implementation, there isn't a need for isb() after reading CNTVCT_EL0, this is only needed in-kernel as the register read has to be ordered with a subsequent locking operation. [1] See Linux's '__arch_get_hw_counter()' in arch/arm64/include/asm/vdso/gettimeofday.h [2] See Linux's 1baa82f4803 ("arm64: Implement cpu_relax as yield"). Signed-off-by: Nicolas Saenz Julienne <[email protected]> -- Changes since v1: - Code cleanup - Add compiler barriers src/oslat/oslat.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) Reviewed-by: Peter Xu <[email protected]> Signed-off-by: John Kacur <[email protected]> benjamin@benjamin-desktop-fedora ~/w/rt-tests (main)> git tag --contains 7d42e803 delete v2.3 v2.4 v2.5 v2.6 v2.7 v2.8 v2.9 ** Affects: rt-tests (Ubuntu) Importance: Undecided Status: New ** Affects: rt-tests (Ubuntu Jammy) Importance: Undecided Status: New ** Also affects: rt-tests (Ubuntu Jammy) Importance: Undecided Status: New ** Description changed: - Running 'oslat --cpu-list 2-7 --rtprio 1 --duration 600 -q' shows the following error on arm64: + On Jammy, running 'oslat --cpu-list 2-7 --rtprio 1 --duration 600 -q' shows the following error on arm64: This architecture is not yet supported. Please implement frc() function first for oslat. And the program stops. It looks like the first version of rt-tests which supports oslat on arm64 is version v2.3: benjamin@benjamin-desktop-fedora ~/w/rt-tests (main)> git show --no-patch 7d42e803 commit 7d42e803ec498595850b6f52f57475fba81e1fa0 Author: Nicolas Saenz Julienne <[email protected]> Date: Mon Sep 13 10:39:07 2021 +0200 - oslat: Add aarch64 support - - The callbacks are based on Linux's implementation: - - CNTVCT_EL0 provides direct access to the system virtual timer[1]. - - 'yield' serves as a CPU hint with similar semantics as x86's - 'pause'[2]. - - In contrast with the kernel's implementation, there isn't a need for - isb() after reading CNTVCT_EL0, this is only needed in-kernel as the - register read has to be ordered with a subsequent locking operation. - - [1] See Linux's '__arch_get_hw_counter()' in arch/arm64/include/asm/vdso/gettimeofday.h - [2] See Linux's 1baa82f4803 ("arm64: Implement cpu_relax as yield"). - Signed-off-by: Nicolas Saenz Julienne <[email protected]> - -- - - Changes since v1: - - Code cleanup - - Add compiler barriers - - src/oslat/oslat.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - - Reviewed-by: Peter Xu <[email protected]> - Signed-off-by: John Kacur <[email protected]> + oslat: Add aarch64 support + + The callbacks are based on Linux's implementation: + - CNTVCT_EL0 provides direct access to the system virtual timer[1]. + - 'yield' serves as a CPU hint with similar semantics as x86's + 'pause'[2]. + + In contrast with the kernel's implementation, there isn't a need for + isb() after reading CNTVCT_EL0, this is only needed in-kernel as the + register read has to be ordered with a subsequent locking operation. + + [1] See Linux's '__arch_get_hw_counter()' in arch/arm64/include/asm/vdso/gettimeofday.h + [2] See Linux's 1baa82f4803 ("arm64: Implement cpu_relax as yield"). + Signed-off-by: Nicolas Saenz Julienne <[email protected]> + -- + + Changes since v1: + - Code cleanup + - Add compiler barriers + + src/oslat/oslat.c | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + + Reviewed-by: Peter Xu <[email protected]> + Signed-off-by: John Kacur <[email protected]> benjamin@benjamin-desktop-fedora ~/w/rt-tests (main)> git tag --contains 7d42e803 delete v2.3 v2.4 v2.5 v2.6 v2.7 v2.8 v2.9 ** Summary changed: - oslat unsupported on arm64 + oslat unsupported on arm64 on jammy ** Description changed: On Jammy, running 'oslat --cpu-list 2-7 --rtprio 1 --duration 600 -q' shows the following error on arm64: This architecture is not yet supported. Please implement frc() function first for oslat. And the program stops. - It looks like the first version of rt-tests which supports oslat on - arm64 is version v2.3: + It looks like the first version of upstream rt-tests which supports + oslat on arm64 is version v2.3: benjamin@benjamin-desktop-fedora ~/w/rt-tests (main)> git show --no-patch 7d42e803 commit 7d42e803ec498595850b6f52f57475fba81e1fa0 Author: Nicolas Saenz Julienne <[email protected]> Date: Mon Sep 13 10:39:07 2021 +0200 oslat: Add aarch64 support The callbacks are based on Linux's implementation: - CNTVCT_EL0 provides direct access to the system virtual timer[1]. - 'yield' serves as a CPU hint with similar semantics as x86's 'pause'[2]. In contrast with the kernel's implementation, there isn't a need for isb() after reading CNTVCT_EL0, this is only needed in-kernel as the register read has to be ordered with a subsequent locking operation. [1] See Linux's '__arch_get_hw_counter()' in arch/arm64/include/asm/vdso/gettimeofday.h [2] See Linux's 1baa82f4803 ("arm64: Implement cpu_relax as yield"). Signed-off-by: Nicolas Saenz Julienne <[email protected]> -- Changes since v1: - Code cleanup - Add compiler barriers src/oslat/oslat.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) Reviewed-by: Peter Xu <[email protected]> Signed-off-by: John Kacur <[email protected]> benjamin@benjamin-desktop-fedora ~/w/rt-tests (main)> git tag --contains 7d42e803 delete v2.3 v2.4 v2.5 v2.6 v2.7 v2.8 v2.9 -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2119677 Title: oslat unsupported on arm64 on jammy To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/rt-tests/+bug/2119677/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
