[GSD-11566] Regression [security]: Sysman engine metrics do not work any more with PERFMON capability
- Dominant language
- C++
- Stars
- 1.4k
- Forks
- 300
- PR merge metrics
- No merged PRs in 30d
Description
Somewhere between these dates / versions:
* 2024-01-11: 23.48.27912.11
* 2024-01-25: 23.52.28202.14
Sysman engine metrics stopped working: https://spec.oneapi.io/level-zero/latest/sysman/api.html#engine
I've tested this with my own `compute-runtime` builds, but it's reported to happen also between e.g. following release packages:
* https://github.com/intel/compute-runtime/releases/tag/23.35.27191.9
* https://github.com/intel/compute-runtime/releases/tag/24.05.28454.6
This regression is visible both with current Ubuntu 22.04 5.15 and its HWE kernel 6.5 (on TGL-H iGPU), and with older 5.15 internal BKC kernel (on ATS-M dGPU), so I assume it to be generic one, not related to any particular HW.
According to `strace -f -e perf_event_open`, earlier version does 36 successful calls like this:
`perf_event_open({type=0x58 /* PERF_TYPE_??? */, size=PERF_ATTR_SIZE_VER7, config=0x100007, sample_period=0, sample_type=0, read_format=PERF_FORMAT_TOTAL_TIME_ENABLED, precise_ip=0 /* arbitrary skid */, ...}, -1, 0, -1, 0) = 57`
And current version does 136 failing calls like this:
`perf_event_open({type=0x58 /* PERF_TYPE_??? */, size=PERF_ATTR_SIZE_VER7, config=0x10000b, sample_period=0, sample_type=0, read_format=PERF_FORMAT_TOTAL_TIME_ENABLED|PERF_FORMAT_GROUP, precise_ip=0 /* arbitrary skid */, ...}, -1, 0, -1, 0) = -1 ENOENT (No such file or directory)`
Looking at the arguments for all of those calls, the differences are `config` argument values being different from earlier ones in all calls, and all of them including now `PERF_FORMAT_GROUP` option.
Contributor guide
Assessment
This issue has not been assessed yet.