diff --git a/pkg/proc/internal/ebpf/bpf/include/function_vals.bpf.h b/pkg/proc/internal/ebpf/bpf/include/function_vals.bpf.h index 0df7b9b7c8..f26c78c876 100644 --- a/pkg/proc/internal/ebpf/bpf/include/function_vals.bpf.h +++ b/pkg/proc/internal/ebpf/bpf/include/function_vals.bpf.h @@ -32,7 +32,7 @@ typedef struct function_parameter_list { long long g_addr_offset; // Offset of the Goroutine struct from the TLS segment. int goroutine_id; - unsigned int fn_addr; + unsigned long long int fn_addr; bool is_ret; unsigned int n_parameters; // number of parameters. diff --git a/pkg/proc/internal/ebpf/helpers.go b/pkg/proc/internal/ebpf/helpers.go index 5e0fc3557a..669552e018 100644 --- a/pkg/proc/internal/ebpf/helpers.go +++ b/pkg/proc/internal/ebpf/helpers.go @@ -40,7 +40,7 @@ type function_parameter_list_t struct { goid_offset uint32 g_addr_offset uint64 goroutine_id uint32 - fn_addr uint32 + fn_addr uint64 is_ret bool n_parameters uint32 @@ -197,7 +197,7 @@ func parseFunctionParameterList(rawParamBytes []byte) RawUProbeParams { func createFunctionParameterList(entry uint64, goidOffset int64, args []UProbeArgMap, isret bool) function_parameter_list_t { var params function_parameter_list_t params.goid_offset = uint32(goidOffset) - params.fn_addr = uint32(entry) + params.fn_addr = entry params.is_ret = isret params.n_parameters = 0 params.n_ret_parameters = 0 diff --git a/pkg/proc/internal/ebpf/trace_bpfel_x86.o b/pkg/proc/internal/ebpf/trace_bpfel_x86.o index 33ac3f003d..fe887d1531 100644 Binary files a/pkg/proc/internal/ebpf/trace_bpfel_x86.o and b/pkg/proc/internal/ebpf/trace_bpfel_x86.o differ