Hi, Sergey!
 
> Fixed your comment and force-pushed the branch.
 
Thanks for the patch!
 
Also, I have a problem to run lldb tests inside Docker container with Ubuntu 24.04.
 
The gdb produce a warning «Error disabling address space randomization: Operation not permitted» only, but lldb produce an error «Cannot launch '/xxx/src/luajit': personality set failed: Operation not permitted» and don’t want to continue without disabling the ASLR. ‘/xxx’ is my build directory.
 
Please, consider this fix:
 
diff --git a/test/tarantool-debugger-tests/debug-extension-tests.py b/test/tarantool-debugger-tests/debug-extension-tests.py
index f337f0e9..65eefd0c 100644
--- a/test/tarantool-debugger-tests/debug-extension-tests.py
+++ b/test/tarantool-debugger-tests/debug-extension-tests.py
@@ -22,7 +22,7 @@ TIMEOUT = 10
 if LLDB:
     INFERIOR_ARGS = '--'
     LOAD_EXTENSION = 'command script import ' + EXTENSION
-    PROCESS_RUN = 'process launch'
+    PROCESS_RUN = 'settings set target.disable-aslr false\nprocess launch'
     # Don't run any initialization scripts.
     RUN_CMD_FILE = [
         '--batch',
 
 
--
Best regards,
Evgeniy Temirgaleev

From: Sergey Kaplun <skaplun@tarantool.org>
To: Evgeniy Temirgaleev <e.temirgaleev@tarantool.org>
Cc: tarantool-patches@dev.tarantool.org, Mikhail Elhimov <m.elhimov@vk.team>, Sergey Bronnikov <sergeyb@tarantool.org>
Date: Tuesday, May 26, 2026 5:42 PM +03:00

 
Hi, Evgeniy!
Thanks for the review!
Fixed your comment and force-pushed the branch.

On 26.05.26, Evgeniy Temirgaleev wrote:
> Hi, Sergey!
>
> Thanks for the patch. Please, consider my suggestion: the debugger-aware «constants» are defined in one block per debugger.
>
> diff --git a/test/tarantool-debugger-tests/debug-extension-tests.py b/test/tarantool-debugger-tests/debug-extension-tests.py
> index 30a2c478..f4414f4d 100644
> --- a/test/tarantool-debugger-tests/debug-extension-tests.py
> +++ b/test/tarantool-debugger-tests/debug-extension-tests.py
> @@ -19,9 +19,6 @@ LLDB = 'lldb' in DEBUGGER
> EXTENSION = EXTENSION_PATH + '/luajit_dbg.py'
> TIMEOUT = 10
>
> -# Don't run any initialization scripts.
> -RUN_CMD_FILE = []
> -
> if LLDB:
> RUN_CMD_FILE = [
> '--batch',
> @@ -30,15 +27,15 @@ if LLDB:
> '--source-quietly',
> '--source'
> ]
> +    INFERIOR_ARGS = '--'
> +    PROCESS_RUN = 'process launch'
> +    LOAD_EXTENSION = 'command script import {ext}'.format(ext=EXTENSION)
> else:
> # GDB.
> RUN_CMD_FILE = ['--batch', '--nx', '--quiet', '--command']
> -
> -INFERIOR_ARGS = '--' if LLDB else '--args'
> -PROCESS_RUN = 'process launch' if LLDB else 'r'
> -LOAD_EXTENSION = (
> -    'command script import {ext}' if LLDB else 'source {ext}'
> -).format(ext=EXTENSION)
> +    INFERIOR_ARGS = '--args'
> +    PROCESS_RUN = 'r'
> +    LOAD_EXTENSION = 'source {ext}'.format(ext=EXTENSION)

Fixed. See the iterative patch below:

===================================================================
diff --git a/test/tarantool-debugger-tests/debug-extension-tests.py b/test/tarantool-debugger-tests/debug-extension-tests.py
index 30a2c478..f337f0e9 100644
--- a/test/tarantool-debugger-tests/debug-extension-tests.py
+++ b/test/tarantool-debugger-tests/debug-extension-tests.py
@@ -19,10 +19,11 @@ LLDB = 'lldb' in DEBUGGER
EXTENSION = EXTENSION_PATH + '/luajit_dbg.py'
TIMEOUT = 10

-# Don't run any initialization scripts.
-RUN_CMD_FILE = []
-
if LLDB:
+ INFERIOR_ARGS = '--'
+ LOAD_EXTENSION = 'command script import ' + EXTENSION
+ PROCESS_RUN = 'process launch'
+ # Don't run any initialization scripts.
RUN_CMD_FILE = [
'--batch',
'--no-lldbinit',
@@ -32,15 +33,12 @@ if LLDB:
]
else:
# GDB.
+ INFERIOR_ARGS = '--args'
+ LOAD_EXTENSION = 'source ' + EXTENSION
+ PROCESS_RUN = 'run'
+ # Don't run any initialization scripts.
RUN_CMD_FILE = ['--batch', '--nx', '--quiet', '--command']

-INFERIOR_ARGS = '--' if LLDB else '--args'
-PROCESS_RUN = 'process launch' if LLDB else 'r'
-LOAD_EXTENSION = (
- 'command script import {ext}' if LLDB else 'source {ext}'
-).format(ext=EXTENSION)
-
-
RX_ADDR = r'0x[a-f0-9]+'
RX_HASH = RX_ADDR # The same pattern for hexademic values.
RX_FRAME = r'\[(S|\s)(B|\s)(T|\s)(M|\s)\]'
===================================================================

>
> --
> Best regards,
> Evgeniy Temirgaleev
>
> >

<snipped>

--
Best regards,
Sergey Kaplun