Hi!

I'm trying to batch-convert an openLDAP 2.4 MMR configuration to an 
configuration using openLDAP 2.5, also using MMR, but on different hosts 
(SLES15 SP6 on x86_64).
When my script tried to drop the syncprov overlay, slapmodify dumps core in 
function slap_tool_update_ctxcsn_check, like this:
kernel: slapmodify[24757]: segfault at 28 ip 000055d656ea7526 sp 
00007ffe9e0875f0 error 4 in slapd[55d656dea000+149000] likely on CPU 1 (core 0, 
socket 2)
kernel: Code: 48 33 0c 25 28 00 00 00 48 c7 c0 ff ff ff ff 0f 85 74 01 00 00 48 
83 c4 28 5b 5d 41 5c 41 5d c3 0f 1f 40 00 49 89 fd 48 89 f3 <48> 8b 7e 28 48 8b 
35 cf fa 09 00 e8 1a f5 f8 ff 48 85 c0...

Dump of assembler code for function slap_tool_update_ctxcsn_check:
   0x000055d656ea74d0 <+0>:     push   %r13
   0x000055d656ea74d2 <+2>:     push   %r12
   0x000055d656ea74d4 <+4>:     push   %rbp
   0x000055d656ea74d5 <+5>:     push   %rbx
   0x000055d656ea74d6 <+6>:     sub    $0x28,%rsp
   0x000055d656ea74da <+10>:    mov    0x9fdd3(%rip),%r8d        # 
0x55d656f472b4 <tool_globals+20>
   0x000055d656ea74e1 <+17>:    mov    %fs:0x28,%rax
   0x000055d656ea74ea <+26>:    mov    %rax,0x18(%rsp)
   0x000055d656ea74ef <+31>:    xor    %eax,%eax
   0x000055d656ea74f1 <+33>:    test   %r8d,%r8d
   0x000055d656ea74f4 <+36>:    jne    0x55d656ea7520 
<slap_tool_update_ctxcsn_check+80>
   0x000055d656ea74f6 <+38>:    mov    0x18(%rsp),%rcx
   0x000055d656ea74fb <+43>:    xor    %fs:0x28,%rcx
   0x000055d656ea7504 <+52>:    mov    $0xffffffffffffffff,%rax
   0x000055d656ea750b <+59>:    jne    0x55d656ea7685 
<slap_tool_update_ctxcsn_check+437>
   0x000055d656ea7511 <+65>:    add    $0x28,%rsp
   0x000055d656ea7515 <+69>:    pop    %rbx
   0x000055d656ea7516 <+70>:    pop    %rbp
   0x000055d656ea7517 <+71>:    pop    %r12
   0x000055d656ea7519 <+73>:    pop    %r13
   0x000055d656ea751b <+75>:    ret
   0x000055d656ea751c <+76>:    nopl   0x0(%rax)
   0x000055d656ea7520 <+80>:    mov    %rdi,%r13
   0x000055d656ea7523 <+83>:    mov    %rsi,%rbx
=> 0x000055d656ea7526 <+86>:    mov    0x28(%rsi),%rdi
   0x000055d656ea752a <+90>:    mov    0x9facf(%rip),%rsi        # 
0x55d656f47000 <slap_schema+192>
   0x000055d656ea7531 <+97>:    call   0x55d656e36a50 <attr_find>
...

Slapmodify had been started with "slapmodify -F /etc/openldap/slapd.d -g -n0 -S 
5 -w", and the input was:
dn: olcOverlay= {0}syncprov, olcDatabase={0}config,cn=config
changetype: delete
The version I'm using was provided by SLES support as 
openldap2_5-2.5.18+31-150500.11.12.1.29527.34.PTF.1239787.x86_64

If I run slapmodify without "-w", no core dump happens.

Kind regards,
Ulrich Windl

Reply via email to