#252 389 programs linked against openldap crash during shutdown
Closed: wontfix None Opened 12 years ago by rmeggins.

https://bugzilla.redhat.com/show_bug.cgi?id=755725

Description of problem:
When restarting the dirsrv process, it receives a segfault

Version-Release number of selected component (if applicable):
389-ds-base-1.2.10-0.5.a5.fc15.x86_64

How reproducible:
100%

Steps to Reproduce:
1. Install FreeIPA
2. Restart DIRSRV
3. check dmesg for segfaults

Actual results:
restart generates segfault

Expected results:
Restart without crashing

Additional info:


(gdb) thread apply all bt all

Thread 1 (Thread 0x7f4a76a387e0 (LWP 918)):
No symbol "all" in current context.
(gdb) thread apply all bt full

Thread 1 (Thread 0x7f4a76a387e0 (LWP 918)):
#0  __GI___libc_free (mem=0x185) at malloc.c:3709
        ar_ptr = <optimized out>
        p = <optimized out>
        hook = 0
#1  0x000000352be0e510 in ldap_int_destroy_global_options () at
../../../libraries/libldap/init.c:496
        gopts = 0x352c049360
#2  0x000000352660e896 in _dl_fini () at dl-fini.c:244
        array = 0x352c0475c8
        i = <optimized out>
        nmaps = 94
        nloaded = <optimized out>
        i = <optimized out>
        l = 0x7f4a76a459b0
        ns = 0
        maps = 0x7fff3ccac680
        maps_size = 752
        do_audit = 0
#3  0x0000003526a38991 in __run_exit_handlers (status=0, listp=0x3526d935a8,
run_list_atexit=true) at exit.c:78
        atfct = <optimized out>
        onfct = <optimized out>
        cxafct = <optimized out>
        f = <optimized out>
#4  0x0000003526a38a15 in __GI_exit (status=<optimized out>) at exit.c:100
No locals.
#5  0x0000003526a213a4 in __libc_start_main (main=0x40c8d0 <main>, argc=7,
ubp_av=0x7fff3ccacb08, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7fff3ccacaf8) at libc-start.c:258
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, -6666163846686787399,
4255964, 140734213311232, 0, 0, 6666311345183307961, -6694800918663219015},
mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x7fff3ccacb48, 0x1}, data =
{prev = 0x0, cleanup = 0x0,
              canceltype = 1019923272}}}
        not_first_call = <optimized out>
#6  0x000000000040f105 in _start ()
No symbol table info available.

commit changeset:91fa21f/389-ds-base
Author: Rich Megginson rmeggins@redhat.com
Date: Wed Dec 14 20:04:48 2011 -0700
Reviewed by: nhosoi (Thanks!)
Branch: master
Fix Description: With recent versions of openldap, you cannot link with both
ldap_r and ldap - when the shared object _fini is run, the _fini from the one
will stomp on the _fini from the other, and the program will crash. The fix
is to link with ldap_r only in a threaded program, and ldap otherwise.
Platforms tested: Fedora 16, RHEL6 x86_64
Flag Day: no
Doc impact: no

Added initial screened field value.

Metadata Update from @nkinder:
- Issue assigned to rmeggins
- Issue set to the milestone: 1.2.10

7 years ago

389-ds-base is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in 389-ds-base's github repository.

This issue has been cloned to Github and is available here:
- https://github.com/389ds/389-ds-base/issues/252

If you want to receive further updates on the issue, please navigate to the github issue
and click on subscribe button.

Thank you for understanding. We apologize for all inconvenience.

Metadata Update from @spichugi:
- Issue close_status updated to: wontfix (was: Fixed)

3 years ago

Login to comment on this ticket.

Metadata