Back to bug 2126805

Who When What Removed Added
Red Hat Bugzilla 2022-09-14 12:57:12 UTC Pool ID sst_pt_perf_debug_rhel_8
Red Hat One Jira (issues.redhat.com) 2022-09-14 13:28:36 UTC Link ID Red Hat Issue Tracker RHELPLAN-133965
William Cohen 2022-09-23 20:38:04 UTC CC wcohen
Keywords Triaged
William Cohen 2022-09-23 20:48:28 UTC Flags needinfo?(mhavrila)
William Cohen 2022-09-23 20:56:50 UTC Keywords Regression
William Cohen 2022-09-26 18:15:15 UTC Flags needinfo?(mhavrila)
William Cohen 2022-09-27 18:29:05 UTC Sub Component system-version system-version
Component systemtap dyninst
CC fche
William Cohen 2023-04-21 19:27:42 UTC Sub Component system-version system-version
Depends On 2186932
Component dyninst systemtap
William Cohen 2023-04-21 19:41:48 UTC Status NEW ASSIGNED
Martin Cermak 2023-04-24 08:53:38 UTC QA Contact qe-baseos-tools-bugs mcermak
William Cohen 2023-04-24 13:39:30 UTC Doc Type If docs needed, set a value Bug Fix
William Cohen 2023-05-01 13:42:28 UTC Fixed In Version systemtap-4.9-1.el8
Status ASSIGNED MODIFIED
errata-xmlrpc 2023-05-11 14:31:17 UTC Status MODIFIED ON_QA
William Cohen 2023-05-15 19:47:09 UTC Doc Text Cause: The systemtap guru mode liveness analysis uses dyninst to parse binaries. The newer kernels enable mitigation code with CONFIG_RETPOLINE=y which replaces traditional RET machine instructions with jumps to a thunk. This greatly complicates the analysis to determine whether the jump to the thunk is to a target inside the function to a cold section of the same function or to a tail call to another function (the thunk).

Consequence: The binary analysis take a much greater amount of time as the analysis needs to examine all the additional edges introduced into the control flow graph (CFG) by the jumps to the thunk.

Fix: Systemtap determine when the kernel code is using thunks (CONFIG_RETPOLINE=y) and disables the liveness analysis in those cases.

Result: Systemtap scripts using guru mode should compile more quickly.
Martin Cermak 2023-05-16 07:12:17 UTC Status ON_QA VERIFIED
Jacob Taylor Valdez 2023-06-20 07:52:35 UTC Doc Text Cause: The systemtap guru mode liveness analysis uses dyninst to parse binaries. The newer kernels enable mitigation code with CONFIG_RETPOLINE=y which replaces traditional RET machine instructions with jumps to a thunk. This greatly complicates the analysis to determine whether the jump to the thunk is to a target inside the function to a cold section of the same function or to a tail call to another function (the thunk).

Consequence: The binary analysis take a much greater amount of time as the analysis needs to examine all the additional edges introduced into the control flow graph (CFG) by the jumps to the thunk.

Fix: Systemtap determine when the kernel code is using thunks (CONFIG_RETPOLINE=y) and disables the liveness analysis in those cases.

Result: Systemtap scripts using guru mode should compile more quickly.
.`systemtap` scripts using guru mode now compile more quickly

The `systemtap` guru mode liveness analysis uses `dyninst` to parse binaries. Newer kernels enable mitigation code with `CONFIG_RETPOLINE=y`, replacing traditional RET instructions, with jumps to a thunk. As a consequence, binary analysis took a much longer time due to the liveness analysis needing to examine all additional edges of the control flow graph introduced by the jumps to the thunk.

With this update, `systemtap` disables liveness analysis when the kernel code is using thunks and, as a result, `systemtap` scripts using guru mode compile more quickly.
Flags needinfo?(fche)
CC jvaldez
Jacob Taylor Valdez 2023-06-20 07:52:59 UTC Docs Contact jvaldez
William Cohen 2023-06-21 19:59:29 UTC Flags needinfo?(fche)
Jacob Taylor Valdez 2023-08-01 10:08:26 UTC Flags needinfo?(fche)
Doc Text .`systemtap` scripts using guru mode now compile more quickly

The `systemtap` guru mode liveness analysis uses `dyninst` to parse binaries. Newer kernels enable mitigation code with `CONFIG_RETPOLINE=y`, replacing traditional RET instructions, with jumps to a thunk. As a consequence, binary analysis took a much longer time due to the liveness analysis needing to examine all additional edges of the control flow graph introduced by the jumps to the thunk.

With this update, `systemtap` disables liveness analysis when the kernel code is using thunks and, as a result, `systemtap` scripts using guru mode compile more quickly.
.`systemtap` scripts using guru mode now compile more quickly

The `systemtap` guru mode liveness analysis uses the `dyninst` library to parse binaries. Newer kernels enable mitigation code with `CONFIG_RETPOLINE=y`, replacing traditional RET instructions, with jumps to a thunk. As a consequence, binary analysis took a much longer time due to the liveness analysis needing to examine all additional edges of the control flow graph introduced by the jumps to the thunk.

With this update, `systemtap` disables liveness analysis when the kernel code is using thunks and, as a result, `systemtap` scripts using guru mode compile more quickly.
William Cohen 2023-08-01 14:24:39 UTC Flags needinfo?(fche)

Back to bug 2126805