On the assembly generated by create_linux_aio (in the mariadbd packages
in Ubuntu-22.04, 10.6.7-2:

(gdb) disassemble tpool::create_linux_aio,+200
Dump of assembler code from 0x5640cf2e1fb0 to 0x5640cf2e2078:
   0x00005640cf2e1fb0 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+0>:      
endbr64 
   0x00005640cf2e1fb4 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+4>:      
push   %rbp
   0x00005640cf2e1fb5 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+5>:      
mov    %rsp,%rbp
   0x00005640cf2e1fb8 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+8>:      
push   %r14
   0x00005640cf2e1fba <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+10>:     
mov    %esi,%r14d
   0x00005640cf2e1fbd <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+13>:     
push   %r13
   0x00005640cf2e1fbf <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+15>:     
mov    %rdi,%r13
   0x00005640cf2e1fc2 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+18>:     
mov    $0x158,%edi
   0x00005640cf2e1fc7 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+23>:     
push   %r12
   0x00005640cf2e1fc9 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+25>:     
sub    $0x8,%rsp
   0x00005640cf2e1fcd <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+29>:     
call   0x5640ceacb570 <_Znwm@plt>
   0x00005640cf2e1fd2 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+34>:     
mov    %r14d,%edx
   0x00005640cf2e1fd5 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+37>:     
mov    %r13,%rsi
   0x00005640cf2e1fd8 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+40>:     
mov    %rax,%rdi
   0x00005640cf2e1fdb <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+43>:     
mov    %rax,%r12
   0x00005640cf2e1fde <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+46>:     
call   0x5640cf2e1dd0 <(anonymous 
namespace)::aio_uring::aio_uring(tpool::thread_pool*, int)>
   0x00005640cf2e1fe3 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+51>:     
add    $0x8,%rsp
   0x00005640cf2e1fe7 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+55>:     
mov    %r12,%rax
   0x00005640cf2e1fea <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+58>:     
pop    %r12
   0x00005640cf2e1fec <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+60>:     
pop    %r13
   0x00005640cf2e1fee <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+62>:     
pop    %r14
   0x00005640cf2e1ff0 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+64>:     
pop    %rbp
   0x00005640cf2e1ff1 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+65>:     
ret    
   0x00005640cf2e1ff2 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+66>:     
endbr64 
   0x00005640cf2e1ff6 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+70>:     
mov    %rax,%rdi
   0x00005640cf2e1ff9 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+73>:     
mov    %rdx,%rax
   0x00005640cf2e1ffc <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+76>:     
jmp    0x5640ceb23308 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi-8121512>
   0x00005640cf2e2001 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+81>:     
endbr64 
   0x00005640cf2e2005 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+85>:     
mov    %rax,%r13
   0x00005640cf2e2008 <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+88>:     
mov    %rdx,%r14
   0x00005640cf2e200b <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi+91>:     
jmp    0x5640ceb232fa <_ZN5tpool16create_linux_aioEPNS_11thread_poolEi.cold>
--Type <RET> for more, q to quit, c to continue without paging--c
   0x00005640cf2e2010 <_ZN5tpool19thread_pool_generic17create_native_aioEi+0>:  
endbr64 
   0x00005640cf2e2014 <_ZN5tpool19thread_pool_generic17create_native_aioEi+4>:  
push   %rbp
   0x00005640cf2e2015 <_ZN5tpool19thread_pool_generic17create_native_aioEi+5>:  
mov    %rsp,%rbp
   0x00005640cf2e2018 <_ZN5tpool19thread_pool_generic17create_native_aioEi+8>:  
push   %r14
   0x00005640cf2e201a <_ZN5tpool19thread_pool_generic17create_native_aioEi+10>: 
mov    %esi,%r14d
   0x00005640cf2e201d <_ZN5tpool19thread_pool_generic17create_native_aioEi+13>: 
push   %r13
   0x00005640cf2e201f <_ZN5tpool19thread_pool_generic17create_native_aioEi+15>: 
mov    %rdi,%r13
   0x00005640cf2e2022 <_ZN5tpool19thread_pool_generic17create_native_aioEi+18>: 
mov    $0x158,%edi
   0x00005640cf2e2027 <_ZN5tpool19thread_pool_generic17create_native_aioEi+23>: 
push   %r12
   0x00005640cf2e2029 <_ZN5tpool19thread_pool_generic17create_native_aioEi+25>: 
sub    $0x8,%rsp
   0x00005640cf2e202d <_ZN5tpool19thread_pool_generic17create_native_aioEi+29>: 
call   0x5640ceacb570 <_Znwm@plt>
   0x00005640cf2e2032 <_ZN5tpool19thread_pool_generic17create_native_aioEi+34>: 
mov    %r14d,%edx
   0x00005640cf2e2035 <_ZN5tpool19thread_pool_generic17create_native_aioEi+37>: 
mov    %r13,%rsi
   0x00005640cf2e2038 <_ZN5tpool19thread_pool_generic17create_native_aioEi+40>: 
mov    %rax,%rdi
   0x00005640cf2e203b <_ZN5tpool19thread_pool_generic17create_native_aioEi+43>: 
mov    %rax,%r12
   0x00005640cf2e203e <_ZN5tpool19thread_pool_generic17create_native_aioEi+46>: 
call   0x5640cf2e1dd0 <(anonymous 
namespace)::aio_uring::aio_uring(tpool::thread_pool*, int)>
   0x00005640cf2e2043 <_ZN5tpool19thread_pool_generic17create_native_aioEi+51>: 
add    $0x8,%rsp
   0x00005640cf2e2047 <_ZN5tpool19thread_pool_generic17create_native_aioEi+55>: 
mov    %r12,%rax
   0x00005640cf2e204a <_ZN5tpool19thread_pool_generic17create_native_aioEi+58>: 
pop    %r12
   0x00005640cf2e204c <_ZN5tpool19thread_pool_generic17create_native_aioEi+60>: 
pop    %r13
   0x00005640cf2e204e <_ZN5tpool19thread_pool_generic17create_native_aioEi+62>: 
pop    %r14
   0x00005640cf2e2050 <_ZN5tpool19thread_pool_generic17create_native_aioEi+64>: 
pop    %rbp
   0x00005640cf2e2051 <_ZN5tpool19thread_pool_generic17create_native_aioEi+65>: 
ret    
   0x00005640cf2e2052 <_ZN5tpool19thread_pool_generic17create_native_aioEi+66>: 
endbr64 
   0x00005640cf2e2056 <_ZN5tpool19thread_pool_generic17create_native_aioEi+70>: 
mov    %rax,%rdi
   0x00005640cf2e2059 <_ZN5tpool19thread_pool_generic17create_native_aioEi+73>: 
mov    %rdx,%rax
   0x00005640cf2e205c <_ZN5tpool19thread_pool_generic17create_native_aioEi+76>: 
jmp    0x5640ceb23334 
<_ZN5tpool19thread_pool_generic17create_native_aioEi-8121564>
   0x00005640cf2e2061 <_ZN5tpool19thread_pool_generic17create_native_aioEi+81>: 
endbr64 
   0x00005640cf2e2065 <_ZN5tpool19thread_pool_generic17create_native_aioEi+85>: 
mov    %rax,%r13
   0x00005640cf2e2068 <_ZN5tpool19thread_pool_generic17create_native_aioEi+88>: 
mov    %rdx,%r14
   0x00005640cf2e206b <_ZN5tpool19thread_pool_generic17create_native_aioEi+91>: 
jmp    0x5640ceb23326 <_ZN5tpool19thread_pool_generic17create_native_aioEi.cold>

My assembly knowledge isn't great, but after the call to (anonymous
namespace)::aio_uring::aio_uring I'd expect some branching to identify
the exception has occurred.

I tested a simplified version
https://gist.github.com/grooverdan/f6d767a04ba5991ea2bf3de821e02e7b on
https://godbolt.org/ and
__cxa_begin_catch/__cxa_end_catch/_Unwind_Resume seem to be a standard
part of exception handling.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1970634

Title:
  FTBFS: mariadb fails to start due to low MEMLOCK limit

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mariadb-10.6/+bug/1970634/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to