Pystack fails to correctly identify _PyRuntime
Discussed in https://github.com/bloomberg/pystack/discussions/254
Originally posted by aplund September 11, 2025 I frequently get the error: "Invalid address in remote process", but don't know what to do about it. With verbose logging, there isn't actually an error reported. Could the nature of the error be logged so that one can figure out what's going wrong?
$ pystack remote $(pidof python) -v
INFO(process_remote): Analyzing process with pid 12105 using stack method StackMethod.AUTO with native mode NativeReportingMode.OFF
INFO(process_remote): Trying to stop thread 12105
INFO(process_remote): Waiting for thread 12105 to be stopped
INFO(process_remote): Thread 12105 stopped
INFO(process_remote): Trying to stop thread 12106
INFO(process_remote): Waiting for thread 12106 to be stopped
INFO(process_remote): Thread 12106 stopped
INFO(process_remote): Trying to stop thread 12107
INFO(process_remote): Waiting for thread 12107 to be stopped
INFO(process_remote): Thread 12107 stopped
INFO(process_remote): Trying to stop thread 12108
INFO(process_remote): Waiting for thread 12108 to be stopped
INFO(process_remote): Thread 12108 stopped
INFO(process_remote): Trying to stop thread 12109
INFO(process_remote): Waiting for thread 12109 to be stopped
INFO(process_remote): Thread 12109 stopped
INFO(process_remote): Trying to stop thread 12110
INFO(process_remote): Waiting for thread 12110 to be stopped
INFO(process_remote): Thread 12110 stopped
INFO(process_remote): Trying to stop thread 12111
INFO(process_remote): Waiting for thread 12111 to be stopped
INFO(process_remote): Thread 12111 stopped
INFO(process_remote): Trying to stop thread 12123
INFO(process_remote): Waiting for thread 12123 to be stopped
INFO(process_remote): Thread 12123 stopped
INFO(process_remote): Trying to stop thread 12124
INFO(process_remote): Waiting for thread 12124 to be stopped
INFO(process_remote): Thread 12124 stopped
INFO(process_remote): Trying to stop thread 12125
INFO(process_remote): Waiting for thread 12125 to be stopped
INFO(process_remote): Thread 12125 stopped
INFO(process_remote): All 10 threads stopped
INFO(parse_maps_file_for_binary): python binary first map found: VirtualMap(start=0x00000000003ff000, end=0x0000000000400000, filesize=0x1000, offset=0x0, device='103:02', flags='rw-p', inode=2322982, path='/home/austin.lund/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13')
INFO(parse_maps_file_for_binary): Process does not have a libpython.so, reading from binary
INFO(parse_maps_file_for_binary): Heap map found: VirtualMap(start=0x000000004695c000, end=0x000000004697c000, filesize=0x20000, offset=0x0, device='00:00', flags='rw-p', inode=0, path='[heap]')
INFO(_get_bss): Determined exact addr of .bss section: 0x159cf40 (0x3ff000 + 0x119df40)
INFO(parse_maps_file_for_binary): bss map found: VirtualMap(start=0x000000000159cf40, end=0x0000000001620f68, filesize=0x84028, offset=0x119cf40, device='', flags='', inode=0, path='None')
INFO(process_remote): Attempting to find symbol '_PyRuntime' in /home/austin.lund/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
INFO(process_remote): Symbol '_PyRuntime' found at address 0x1557c40
INFO(process_remote): Attempting to find symbol '_PyRuntime' in /home/austin.lund/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
INFO(process_remote): Symbol '_PyRuntime' found at address 0x76dbe24fdc40
INFO(process_remote): Attempting to find symbol 'Py_Version' in /home/austin.lund/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
INFO(process_remote): Symbol 'Py_Version' found at address 0xf91d88
INFO(process_remote): Attempting to find symbol 'Py_Version' in /home/austin.lund/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
INFO(process_remote): Symbol 'Py_Version' found at address 0x76dbe1f37d88
INFO(get_python_version_for_process): Version found by scanning the bss section: 3.13
INFO(process_remote): Detaching from thread 12125
INFO(process_remote): Detaching from thread 12124
INFO(process_remote): Detaching from thread 12111
INFO(process_remote): Detaching from thread 12123
INFO(process_remote): Detaching from thread 12110
INFO(process_remote): Detaching from thread 12109
INFO(process_remote): Detaching from thread 12108
INFO(process_remote): Detaching from thread 12107
INFO(process_remote): Detaching from thread 12106
INFO(process_remote): Detaching from thread 12105
💀 Engine error: Invalid address in remote process 💀
```</div>
Ohhhh, I know what's happening. Seems that importing llvmlite.binding dlopens the process itself and there is a second mapping and that returns a garbage value for _PyRuntime. Before importing:
003ff000-00400000 rw-p 00000000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
00400000-00422000 r--p 00001000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
00422000-00f53000 r-xp 00023000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
00f53000-0148c000 r--p 00b54000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
0148c000-014f3000 r--p 0108c000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
014f3000-015a0000 rw-p 010f3000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
015a0000-01624000 rw-p 00000000 00:00 0
01800000-01fe3000 r-xp 011a0000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
3f472000-3f71c000 rw-p 00000000 00:00 0 [heap]
7f6b85f00000-7f6b86200000 rw-p 00000000 00:00 0
7f6b86200000-7f6b864ec000 r--p 00000000 00:1d 53430 /usr/lib/locale/locale-archive
7f6b86500000-7f6b86600000 rw-p 00000000 00:00 0
7f6b86600000-7f6b86624000 r--p 00000000 00:1d 3753 /usr/lib/libc.so.6
7f6b86624000-7f6b86796000 r-xp 00024000 00:1d 3753 /usr/lib/libc.so.6
7f6b86796000-7f6b86805000 r--p 00196000 00:1d 3753 /usr/lib/libc.so.6
7f6b86805000-7f6b86809000 r--p 00204000 00:1d 3753 /usr/lib/libc.so.6
7f6b86809000-7f6b8680b000 rw-p 00208000 00:1d 3753 /usr/lib/libc.so.6
7f6b8680b000-7f6b86813000 rw-p 00000000 00:00 0
7f6b86840000-7f6b869b9000 rw-p 00000000 00:00 0
7f6b869b9000-7f6b869c8000 r--p 00000000 00:1d 3763 /usr/lib/libm.so.6
7f6b869c8000-7f6b86a53000 r-xp 0000f000 00:1d 3763 /usr/lib/libm.so.6
7f6b86a53000-7f6b86ac5000 r--p 0009a000 00:1d 3763 /usr/lib/libm.so.6
7f6b86ac5000-7f6b86ac6000 r--p 0010b000 00:1d 3763 /usr/lib/libm.so.6
7f6b86ac6000-7f6b86ac7000 rw-p 0010c000 00:1d 3763 /usr/lib/libm.so.6
7f6b86ac7000-7f6b86ac8000 r--p 00000000 00:1d 3785 /usr/lib/librt.so.1
7f6b86ac8000-7f6b86ac9000 r-xp 00001000 00:1d 3785 /usr/lib/librt.so.1
7f6b86ac9000-7f6b86aca000 r--p 00002000 00:1d 3785 /usr/lib/librt.so.1
7f6b86aca000-7f6b86acb000 r--p 00002000 00:1d 3785 /usr/lib/librt.so.1
7f6b86acb000-7f6b86acc000 rw-p 00003000 00:1d 3785 /usr/lib/librt.so.1
7f6b86acc000-7f6b86acd000 r--p 00000000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86acd000-7f6b86ace000 r-xp 00001000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86ace000-7f6b86acf000 r--p 00002000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86acf000-7f6b86ad0000 r--p 00002000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86ad0000-7f6b86ad1000 rw-p 00003000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86ad1000-7f6b86ad2000 r--p 00000000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad2000-7f6b86ad3000 r-xp 00001000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad3000-7f6b86ad4000 r--p 00002000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad4000-7f6b86ad5000 r--p 00002000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad5000-7f6b86ad6000 rw-p 00003000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad6000-7f6b86ad7000 r--p 00000000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86ad7000-7f6b86ad8000 r-xp 00001000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86ad8000-7f6b86ad9000 r--p 00002000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86ad9000-7f6b86ada000 r--p 00002000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86ada000-7f6b86adb000 rw-p 00003000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86add000-7f6b86b04000 rw-p 00000000 00:00 0
7f6b86b04000-7f6b86b08000 r--p 00000000 00:00 0 [vvar]
7f6b86b08000-7f6b86b0a000 r--p 00000000 00:00 0 [vvar_vclock]
7f6b86b0a000-7f6b86b0c000 r-xp 00000000 00:00 0 [vdso]
7f6b86b0c000-7f6b86b0d000 r--p 00000000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b0d000-7f6b86b37000 r-xp 00001000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b37000-7f6b86b45000 r--p 0002b000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b45000-7f6b86b47000 r--p 00039000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b47000-7f6b86b48000 rw-p 0003b000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b48000-7f6b86b49000 rw-p 00000000 00:00 0
7ffccb75f000-7ffccb781000 rw-p 00000000 00:00 0 [stack]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
and after importing:
003ff000-00400000 rw-p 00000000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
00400000-00422000 r--p 00001000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
00422000-00f53000 r-xp 00023000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
00f53000-0148c000 r--p 00b54000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
0148c000-014f3000 r--p 0108c000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
014f3000-015a0000 rw-p 010f3000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
015a0000-01624000 rw-p 00000000 00:00 0
01800000-01fe3000 r-xp 011a0000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
3f472000-3f837000 rw-p 00000000 00:00 0 [heap]
7f6b7f500000-7f6b7f600000 rw-p 00000000 00:00 0
7f6b7f600000-7f6b7f697000 r--p 00000000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
7f6b7f697000-7f6b7f7ec000 r-xp 00097000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
7f6b7f7ec000-7f6b7f87e000 r--p 001ec000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
7f6b7f87e000-7f6b7f88f000 r--p 0027e000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
7f6b7f88f000-7f6b7f890000 rw-p 0028f000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
7f6b7f890000-7f6b7f894000 rw-p 00000000 00:00 0
7f6b7f8be000-7f6b7f9be000 rw-p 00000000 00:00 0
7f6b7f9be000-7f6b7f9c2000 r--p 00000000 00:1d 4566 /usr/lib/libgcc_s.so.1
7f6b7f9c2000-7f6b7f9e5000 r-xp 00004000 00:1d 4566 /usr/lib/libgcc_s.so.1
7f6b7f9e5000-7f6b7f9e9000 r--p 00027000 00:1d 4566 /usr/lib/libgcc_s.so.1
7f6b7f9e9000-7f6b7f9ea000 r--p 0002a000 00:1d 4566 /usr/lib/libgcc_s.so.1
7f6b7f9ea000-7f6b7f9eb000 rw-p 0002b000 00:1d 4566 /usr/lib/libgcc_s.so.1
7f6b7f9eb000-7f6b800b3000 r--p 00000000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
7f6b800b3000-7f6b83602000 r-xp 006c8000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
7f6b83602000-7f6b856d5000 r--p 03c17000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
7f6b856d5000-7f6b856d6000 ---p 05cea000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
7f6b856d6000-7f6b85d1b000 r--p 05cea000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
7f6b85d1b000-7f6b85d29000 rw-p 0632f000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
7f6b85d29000-7f6b86200000 rw-p 00000000 00:00 0
7f6b86200000-7f6b864ec000 r--p 00000000 00:1d 53430 /usr/lib/locale/locale-archive
7f6b86500000-7f6b86600000 rw-p 00000000 00:00 0
7f6b86600000-7f6b86624000 r--p 00000000 00:1d 3753 /usr/lib/libc.so.6
7f6b86624000-7f6b86796000 r-xp 00024000 00:1d 3753 /usr/lib/libc.so.6
7f6b86796000-7f6b86805000 r--p 00196000 00:1d 3753 /usr/lib/libc.so.6
7f6b86805000-7f6b86809000 r--p 00204000 00:1d 3753 /usr/lib/libc.so.6
7f6b86809000-7f6b8680b000 rw-p 00208000 00:1d 3753 /usr/lib/libc.so.6
7f6b8680b000-7f6b86813000 rw-p 00000000 00:00 0
7f6b86833000-7f6b86836000 r--p 00000000 00:1d 7888 /usr/lib/libz.so.1.3.1
7f6b86836000-7f6b86844000 r-xp 00003000 00:1d 7888 /usr/lib/libz.so.1.3.1
7f6b86844000-7f6b8684a000 r--p 00011000 00:1d 7888 /usr/lib/libz.so.1.3.1
7f6b8684a000-7f6b8684b000 r--p 00017000 00:1d 7888 /usr/lib/libz.so.1.3.1
7f6b8684b000-7f6b8684c000 rw-p 00018000 00:1d 7888 /usr/lib/libz.so.1.3.1
7f6b86872000-7f6b869b9000 rw-p 00000000 00:00 0
7f6b869b9000-7f6b869c8000 r--p 00000000 00:1d 3763 /usr/lib/libm.so.6
7f6b869c8000-7f6b86a53000 r-xp 0000f000 00:1d 3763 /usr/lib/libm.so.6
7f6b86a53000-7f6b86ac5000 r--p 0009a000 00:1d 3763 /usr/lib/libm.so.6
7f6b86ac5000-7f6b86ac6000 r--p 0010b000 00:1d 3763 /usr/lib/libm.so.6
7f6b86ac6000-7f6b86ac7000 rw-p 0010c000 00:1d 3763 /usr/lib/libm.so.6
7f6b86ac7000-7f6b86ac8000 r--p 00000000 00:1d 3785 /usr/lib/librt.so.1
7f6b86ac8000-7f6b86ac9000 r-xp 00001000 00:1d 3785 /usr/lib/librt.so.1
7f6b86ac9000-7f6b86aca000 r--p 00002000 00:1d 3785 /usr/lib/librt.so.1
7f6b86aca000-7f6b86acb000 r--p 00002000 00:1d 3785 /usr/lib/librt.so.1
7f6b86acb000-7f6b86acc000 rw-p 00003000 00:1d 3785 /usr/lib/librt.so.1
7f6b86acc000-7f6b86acd000 r--p 00000000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86acd000-7f6b86ace000 r-xp 00001000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86ace000-7f6b86acf000 r--p 00002000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86acf000-7f6b86ad0000 r--p 00002000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86ad0000-7f6b86ad1000 rw-p 00003000 00:1d 3789 /usr/lib/libutil.so.1
7f6b86ad1000-7f6b86ad2000 r--p 00000000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad2000-7f6b86ad3000 r-xp 00001000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad3000-7f6b86ad4000 r--p 00002000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad4000-7f6b86ad5000 r--p 00002000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad5000-7f6b86ad6000 rw-p 00003000 00:1d 3758 /usr/lib/libdl.so.2
7f6b86ad6000-7f6b86ad7000 r--p 00000000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86ad7000-7f6b86ad8000 r-xp 00001000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86ad8000-7f6b86ad9000 r--p 00002000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86ad9000-7f6b86ada000 r--p 00002000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86ada000-7f6b86adb000 rw-p 00003000 00:1d 3780 /usr/lib/libpthread.so.0
7f6b86adb000-7f6b86adc000 r-xp 00517000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
7f6b86adc000-7f6b86b04000 rw-p 00000000 00:00 0
7f6b86b04000-7f6b86b08000 r--p 00000000 00:00 0 [vvar]
7f6b86b08000-7f6b86b0a000 r--p 00000000 00:00 0 [vvar_vclock]
7f6b86b0a000-7f6b86b0c000 r-xp 00000000 00:00 0 [vdso]
7f6b86b0c000-7f6b86b0d000 r--p 00000000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b0d000-7f6b86b37000 r-xp 00001000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b37000-7f6b86b45000 r--p 0002b000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b45000-7f6b86b47000 r--p 00039000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b47000-7f6b86b48000 rw-p 0003b000 00:1d 3744 /usr/lib/ld-linux-x86-64.so.2
7f6b86b48000-7f6b86b49000 rw-p 00000000 00:00 0
7ffccb75f000-7ffccb781000 rw-p 00000000 00:00 0 [stack]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0 [vsyscall]
cpython main ? ❯ diff lel1.txt lel2.txt
9,10c9,29
< 3f472000-3f71c000 rw-p 00000000 00:00 0 [heap]
< 7f6b85f00000-7f6b86200000 rw-p 00000000 00:00 0
---
> 3f472000-3f837000 rw-p 00000000 00:00 0 [heap]
> 7f6b7f500000-7f6b7f600000 rw-p 00000000 00:00 0
> 7f6b7f600000-7f6b7f697000 r--p 00000000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
> 7f6b7f697000-7f6b7f7ec000 r-xp 00097000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
> 7f6b7f7ec000-7f6b7f87e000 r--p 001ec000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
> 7f6b7f87e000-7f6b7f88f000 r--p 0027e000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
> 7f6b7f88f000-7f6b7f890000 rw-p 0028f000 00:1d 4596 /usr/lib/libstdc++.so.6.0.34
> 7f6b7f890000-7f6b7f894000 rw-p 00000000 00:00 0
> 7f6b7f8be000-7f6b7f9be000 rw-p 00000000 00:00 0
> 7f6b7f9be000-7f6b7f9c2000 r--p 00000000 00:1d 4566 /usr/lib/libgcc_s.so.1
> 7f6b7f9c2000-7f6b7f9e5000 r-xp 00004000 00:1d 4566 /usr/lib/libgcc_s.so.1
> 7f6b7f9e5000-7f6b7f9e9000 r--p 00027000 00:1d 4566 /usr/lib/libgcc_s.so.1
> 7f6b7f9e9000-7f6b7f9ea000 r--p 0002a000 00:1d 4566 /usr/lib/libgcc_s.so.1
> 7f6b7f9ea000-7f6b7f9eb000 rw-p 0002b000 00:1d 4566 /usr/lib/libgcc_s.so.1
> 7f6b7f9eb000-7f6b800b3000 r--p 00000000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
> 7f6b800b3000-7f6b83602000 r-xp 006c8000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
> 7f6b83602000-7f6b856d5000 r--p 03c17000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
> 7f6b856d5000-7f6b856d6000 ---p 05cea000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
> 7f6b856d6000-7f6b85d1b000 r--p 05cea000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
> 7f6b85d1b000-7f6b85d29000 rw-p 0632f000 00:35 736 /tmp/.venv/lib/python3.13/site-packages/llvmlite/binding/libllvmlite.so
> 7f6b85d29000-7f6b86200000 rw-p 00000000 00:00 0
19c38,43
< 7f6b86840000-7f6b869b9000 rw-p 00000000 00:00 0
---
> 7f6b86833000-7f6b86836000 r--p 00000000 00:1d 7888 /usr/lib/libz.so.1.3.1
> 7f6b86836000-7f6b86844000 r-xp 00003000 00:1d 7888 /usr/lib/libz.so.1.3.1
> 7f6b86844000-7f6b8684a000 r--p 00011000 00:1d 7888 /usr/lib/libz.so.1.3.1
> 7f6b8684a000-7f6b8684b000 r--p 00017000 00:1d 7888 /usr/lib/libz.so.1.3.1
> 7f6b8684b000-7f6b8684c000 rw-p 00018000 00:1d 7888 /usr/lib/libz.so.1.3.1
> 7f6b86872000-7f6b869b9000 rw-p 00000000 00:00 0
45c69,70
< 7f6b86add000-7f6b86b04000 rw-p 00000000 00:00 0
---
> 7f6b86adb000-7f6b86adc000 r-xp 00517000 00:1d 712483 /home/pablogsal/.local/share/uv/python/cpython-3.13.7-linux-x86_64-gnu/bin/python3.13
> 7f6b86adc000-7f6b86b04000 rw-p 00000000 00:00 0
After forcing https://github.com/bloomberg/pystack/blob/134db1dbf1a59c04d9681f9d55ef8d2d4209a6da/src/pystack/_pystack/unwinder.cpp#L378 to not overwrite the previous value I can unwind correctly. The problem is that the module is called twice!