Go version

go version go1.21.6 linux/amd64

Output of go env in your module/workspace:

GO111MODULE='on'
GOARCH='amd64'
GOBIN=''
GOCACHE='/home/alonzivony/.cache/go-build'
GOENV='/home/alonzivony/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/home/alonzivony/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/alonzivony/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/local/go'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/usr/local/go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.21.6'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/home/alonzivony/go/src/tracee/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1454173317=/tmp/go-build -gno-record-gcc-switches'

What did you do?

Just missing a single const value in exported consts. You can find its declaration in the tools/perf/util/symbol-elf.c file in the kernel source code:

#ifndef STT_GNU_IFUNC
#define STT_GNU_IFUNC 10
#endif

I think this is the only value missing from the type consts from my check on the source code of kernel 6.3.6, but there are multiple kernels out already since then so maybe more through search is required.

What did you see happen?

Have no const

What did you expect to see?

Const exist

Comment From: gopherbot

Change https://go.dev/cl/578995 mentions this issue: debug/elf: define non-standard but well-known symbol types