Skip to content

Instantly share code, notes, and snippets.

@Swyter
Last active July 2, 2023 05:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Swyter/0c5043a17d25c6bf93fe3243fdf512d8 to your computer and use it in GitHub Desktop.
Save Swyter/0c5043a17d25c6bf93fe3243fdf512d8 to your computer and use it in GitHub Desktop.
Intel GPA on Linux crashing on startup / closing due to CpuEnumerator::InconsistentProcessAffinity: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=intel-gpa-bin&id=e08841e91927447881d5164dfb89e03634241e3d
$ gpa-frame-analyzer
terminate called after throwing an instance of 'CpuEnumerator::InconsistentProcessAffinity'
  what():  This process is restricted and not able to run on all logical processors managed by OS
$ FA_PATH=/opt/intel/gpa
$ export LD_LIBRARY_PATH=$FA_PATH:$LD_LIBRARY_PATH
$ export LD_PRELOAD="/home/swyter/intel-gpa-bin/libschedwrapper.so $FA_PATH/python3/lib/libpython3.11.so"
$ $FA_PATH/FrameAnalyzer

[i] swy: current process: /opt/intel/gpa/FrameAnalyzer
[i] swy: ret address: 0x7f5677947706, (nil), (nil)
[i] swy: 0 = sched_getaffinity(0, 128, 0x7f565e7fbbe0)
   - 00 - 0xffffff
   - 01 - 0
   - 02 - 0
   - 03 - 0
   - 04 - 0
   - 05 - 0
   - 06 - 0
   - 07 - 0
   - 08 - 0
   - 09 - 0
   - 10 - 0
   - 11 - 0
   - 12 - 0
   - 13 - 0
   - 14 - 0
   - 15 - 0
   - 16 - 0
terminate called after throwing an instance of 'CpuEnumerator::InconsistentProcessAffinity'
  what():  This process is restricted and not able to run on all logical processors managed by OS
$ gdb $FA_PATH/FrameAnalyzer
(gdb) break sched_getaffinity
(gdb) r
(gdb) bt
(gdb) c
(gdb) bt
(gdb) c
(gdb) bt
(gdb) c
Thread 19 "FrameAnalyzer" hit Breakpoint 1.3, 0x00007ffff7fbe140 in sched_getaffinity () from /home/swyter/intel-gpa-bin/libschedwrapper.so
(gdb) bt
#0  0x00007ffff7fbe140 in sched_getaffinity () from /home/swyter/intel-gpa-bin/libschedwrapper.so
#1  0x00007fffd5947706 in ?? () from /opt/intel/gpa/com/intel/framedb/libframedb_qt.so
#2  0x00007fffd5947b60 in ?? () from /opt/intel/gpa/com/intel/framedb/libframedb_qt.so
#3  0x00007fffd5947dc8 in ?? () from /opt/intel/gpa/com/intel/framedb/libframedb_qt.so
#4  0x00007ffff4ae1943 in std::execute_native_thread_routine (__p=0x5555563a1540) at /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:104
#5  0x00007ffff669d44b in ?? () from /usr/lib/libc.so.6
#6  0x00007ffff6720e40 in ?? () from /usr/lib/libc.so.6
(gdb) layout asm
(gdb) layout regs
(gdb) finish # swy: return from stack frame / go to parent function
(gdb) finish
(gdb) finish
(gdb) stepi
(gdb) set $eax=0 # swy: for some reason it's 32, with this we change the parameter and exits early, the program runs perfectly
(gdb) c
$ gdb $FA_PATH/GpaMonitor
(gdb) break sched_getaffinity
Thread 16 "GpaMonitor" hit Breakpoint 1.3, 0x00007ffff7fbe140 in sched_getaffinity () from /home/swyter/intel-gpa-bin/libschedwrapper.so
(gdb) bt
#0  0x00007ffff7fbe140 in sched_getaffinity () from /home/swyter/intel-gpa-bin/libschedwrapper.so
#1  0x00007fffd5b9a996 in ?? () from /opt/intel/gpa/com/intel/monitor_presenters/libMonitorPresenters.so
#2  0x00007fffd5b9adf0 in ?? () from /opt/intel/gpa/com/intel/monitor_presenters/libMonitorPresenters.so
#3  0x00007fffd5b9b058 in ?? () from /opt/intel/gpa/com/intel/monitor_presenters/libMonitorPresenters.so
#4  0x00007ffff4ae1943 in std::execute_native_thread_routine (__p=0x555555f0b370) at /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:104
#5  0x00007ffff669d44b in ?? () from /usr/lib/libc.so.6
#6  0x00007ffff6720e40 in ?? () from /usr/lib/libc.so.6
(gdb) finish
(gdb) finish
(gdb) finish
Run till exit from #0  0x00007ffff7fbe185 in sched_getaffinity () from /home/swyter/intel-gpa-bin/libschedwrapper.so
[i] swy: current process: /opt/intel/gpa/GpaMonitor
[i] swy: ret address: 0x7fffd5b9a996, (nil), (nil)
[i] swy: 0 = sched_getaffinity(0, 128, 0x7fffc09fdbe0)
   - 00 - 0xffffff
   - 01 - 0
   - 02 - 0
   - 03 - 0
   - 04 - 0
   - 05 - 0
   - 06 - 0
   - 07 - 0
   - 08 - 0
   - 09 - 0
   - 10 - 0
   - 11 - 0
   - 12 - 0
   - 13 - 0
   - 14 - 0
   - 15 - 0
   - 16 - 0xf4c78d20
0x00007fffd5b9a996 in ?? () from /opt/intel/gpa/com/intel/monitor_presenters/libMonitorPresenters.so
(gdb) bt
#0  0x00007fffd5b9a996 in ?? () from /opt/intel/gpa/com/intel/monitor_presenters/libMonitorPresenters.so
#1  0x00007fffd5b9adf0 in ?? () from /opt/intel/gpa/com/intel/monitor_presenters/libMonitorPresenters.so
#2  0x00007fffd5b9b058 in ?? () from /opt/intel/gpa/com/intel/monitor_presenters/libMonitorPresenters.so
#3  0x00007ffff4ae1943 in std::execute_native_thread_routine (__p=0x555555f0d750) at /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:104
#4  0x00007ffff669d44b in ?? () from /usr/lib/libc.so.6
#5  0x00007ffff6720e40 in ?? () from /usr/lib/libc.so.6

$ grep -R 'This process is restricted and not able to run on all logical processors' /opt/intel/gpa/
grep: /opt/intel/gpa/playback: coincidencia en fichero binario
grep: /opt/intel/gpa/GpaPlayer: coincidencia en fichero binario
grep: /opt/intel/gpa/libGLHUD.so: coincidencia en fichero binario
grep: /opt/intel/gpa/x86/libGLHUD.so: coincidencia en fichero binario
grep: /opt/intel/gpa/x86/libGLESTrace.so: coincidencia en fichero binario
grep: /opt/intel/gpa/x86/libGLESCapture.so: coincidencia en fichero binario
grep: /opt/intel/gpa/GpaServer: coincidencia en fichero binario
grep: /opt/intel/gpa/libGLESTrace.so: coincidencia en fichero binario
grep: /opt/intel/gpa/libRealtimePresenters.so: coincidencia en fichero binario
grep: /opt/intel/gpa/libTracePresenters.so: coincidencia en fichero binario
grep: /opt/intel/gpa/com/intel/framedb/libframedb_qt.so: coincidencia en fichero binario
grep: /opt/intel/gpa/com/intel/openfiledialog/libOpenFileDialog.so: coincidencia en fichero binario
grep: /opt/intel/gpa/com/intel/common_presenters/libQTCommonPresenters.so: coincidencia en fichero binario
grep: /opt/intel/gpa/com/intel/monitor_presenters/libMonitorPresenters.so: coincidencia en fichero binario
grep: /opt/intel/gpa/com/intel/ta_presenters/libTraceAnalyzerPresenters.so: coincidencia en fichero binario
grep: /opt/intel/gpa/com/intel/sa_presenters/libSystemAnalyzerPresenters.so: coincidencia en fichero binario
grep: /opt/intel/gpa/Streams/libStreamPlayback.so: coincidencia en fichero binario
grep: /opt/intel/gpa/Streams/libStreamPlayer.so: coincidencia en fichero binario
grep: /opt/intel/gpa/libGLESCapture.so: coincidencia en fichero binario
grep: /opt/intel/gpa/libGLPlayer.so: coincidencia en fichero binario
grep: /opt/intel/gpa/GpaRemotePlayer: coincidencia en fichero binario
grep: /opt/intel/gpa/libTimelinePresenters.so: coincidencia en fichero binario
$ gdb --args /opt/intel/gpa/GpaServer --pipe --player --use-config
(gdb) break sched_getaffinity
Thread 6 "GpaServer" hit Breakpoint 1.1, 0x00007ffff73055b0 in sched_getaffinity () from /usr/lib/libc.so.6
(gdb) bt
(gdb) r
(gdb) bt
#0  0x00007ffff73055b0 in sched_getaffinity () from /usr/lib/libc.so.6
#1  0x00007ffff7fbe185 in sched_getaffinity () from /home/swyter/intel-gpa-bin/libschedwrapper.so
#2  0x0000555555a691e6 in ?? ()
#3  0x0000555555a69640 in ?? ()
#4  0x0000555555a698a8 in ?? ()
#5  0x00007ffff74e1943 in std::execute_native_thread_routine (__p=0x555555cbd8e0) at /usr/src/debug/gcc/gcc/libstdc++-v3/src/c++11/thread.cc:104
#6  0x00007ffff729d44b in ?? () from /usr/lib/libc.so.6
#7  0x00007ffff7320e40 in ?? () from /usr/lib/libc.so.6
(gdb) c
Continuing.
[i] swy: current process: /opt/intel/gpa/GpaServer
[i] swy: ret address: 0x555555a691e6, (nil), (nil)
[i] swy: 0 = sched_getaffinity(0, 128, 0x7ffff35fabe0)
   - 00 - 0xffffff
   - 01 - 0
   - 02 - 0
   - 03 - 0
   - 04 - 0
   - 05 - 0
   - 06 - 0
   - 07 - 0
   - 08 - 0
   - 09 - 0
   - 10 - 0
   - 11 - 0
   - 12 - 0
   - 13 - 0
   - 14 - 0
   - 15 - 0
   - 16 - 0
[Thread 0x7ffff35fb6c0 (LWP 55842) exited]
terminate called after throwing an instance of 'CpuEnumerator::InconsistentProcessAffinity'
  what():  This process is restricted and not able to run on all logical processors managed by OS
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment