mirror of
https://github.com/opnsense/src.git
synced 2026-02-18 18:20:26 -05:00
dtrace/arm64: Fix enumeration of FBT return probes
On arm64, the FBT provider treats tail calls as return probes. Ignoring the question of whether this is really correct, the implementation is wrong: instr is a pointer to uint32_t, so the removed multiplication by the instruction size is wrong. As a result, FBT would create return probes for intra-function branches. MFC after: 2 weeks Sponsored by: Innovate UK (cherry picked from commit 4da070ce6c015a994ec4ecf3d31ee94810ea19f1)
This commit is contained in:
parent
40c56cc51e
commit
9ab9e138f3
1 changed files with 1 additions and 2 deletions
|
|
@ -178,8 +178,7 @@ again:
|
|||
break;
|
||||
else if ((*instr & B_MASK) == B_INSTR) {
|
||||
offs = (*instr & B_DATA_MASK);
|
||||
offs *= 4;
|
||||
target = (instr + offs);
|
||||
target = instr + offs;
|
||||
start = (uint32_t *)symval->value;
|
||||
if (target >= limit || target < start)
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in a new issue