iovisor / bcc

BCC - Tools for BPF-based Linux IO analysis, networking, monitoring, and more
Apache License 2.0
20.36k stars 3.86k forks source link

usdt: Fix bare register dereference on aarch64 #5034

Closed moonchen closed 3 months ago

moonchen commented 3 months ago

This change fixes parsing of USDT arguments like [x8].

When a memory dereference has no offset or index register, the parsing code skips setting an offset, which causes the argument to be interpreted as simply a register. This is causes the argument value to not be dereferenced as required.

This change sets an offset constant of 0 so that the address will still be dereferenced.