2021-07-31 15:16:26 +00:00
|
|
|
package ebpf
|
|
|
|
|
|
|
|
import (
|
|
|
|
"reflect"
|
|
|
|
|
|
|
|
"github.com/go-delve/delve/pkg/dwarf/godwarf"
|
|
|
|
"github.com/go-delve/delve/pkg/dwarf/op"
|
|
|
|
)
|
|
|
|
|
|
|
|
type UProbeArgMap struct {
|
|
|
|
Offset int64 // Offset from the stackpointer.
|
|
|
|
Size int64 // Size in bytes.
|
|
|
|
Kind reflect.Kind // Kind of variable.
|
|
|
|
Pieces []int // Pieces of the variables as stored in registers.
|
|
|
|
InReg bool // True if this param is contained in a register.
|
2021-10-25 19:37:36 +00:00
|
|
|
Ret bool // True if this param is a return value.
|
2021-07-31 15:16:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
type RawUProbeParam struct {
|
|
|
|
Pieces []op.Piece
|
|
|
|
RealType godwarf.Type
|
|
|
|
Kind reflect.Kind
|
|
|
|
Len int64
|
|
|
|
Base uint64
|
|
|
|
Addr uint64
|
|
|
|
Data []byte
|
|
|
|
}
|
|
|
|
|
|
|
|
type RawUProbeParams struct {
|
2021-10-25 19:37:36 +00:00
|
|
|
FnAddr int
|
|
|
|
GoroutineID int
|
2022-07-29 10:00:32 +00:00
|
|
|
IsRet bool
|
2021-10-25 19:37:36 +00:00
|
|
|
InputParams []*RawUProbeParam
|
|
|
|
ReturnParams []*RawUProbeParam
|
2021-07-31 15:16:26 +00:00
|
|
|
}
|