[Date Prev][Date Next] [Chronological] [Thread] [Top]

(ITS#7233) SLAP_SOCK_NOT_ACTIVE() crash during shutdown



Full_Name: Hallvard B Furuseth
Version: RE24, 0e03b1369f4da5db9d0bdd2445b3a7ccc0c5638f
OS: Linux x86_64
URL: 
Submission from: (NULL) (195.1.106.125)
Submitted by: hallvard


test058(hdb): SLAP_SOCK_NOT_ACTIVE() crashed during shutdown
because slap_daemon[id].sd_index is NULL:

#0 in slapd_add (s=-1, isactive=0, sl=0x0, id=1) at daemon.c:856
856     assert( SLAP_SOCK_NOT_ACTIVE(id, s) );

# define SLAP_EPOLL_SOCK_IX(t,s)    (slap_daemon[t].sd_index[(s)])
# define SLAP_SOCK_NOT_ACTIVE(t,s)  (SLAP_EPOLL_SOCK_IX(t,s) == -1)

(gdb) backtrace full
#0  0x000000000042433a in slapd_add (s=-1, isactive=0, sl=0x0, id=1) at
daemon.c:856
        __PRETTY_FUNCTION__ = "slapd_add"
#1  0x00000000004285dc in slapd_daemon_task (ptr=0x7ffff6b550a8) at
daemon.c:2136
        l = 0
        last_idle_check = 0
        ebadf = 0
        tid = 1
#2  0x000000321d2077f1 in start_thread () from /lib64/libpthread.so.0
#3  0x000000321cae5ccd in clone () from /lib64/libc.so.6
(gdb) p slap_daemon[id]
$1 = {
  sd_mutex = {
    __data = {
      __lock = 1, __count = 0, __owner = 12683, __nusers = 1, 
      __kind = 0, __spins = 0, __list = { __prev = 0x0, __next = 0x0 }
    }, 
    __size = "\001\000\000\000\000\000\000\000\213\061\000\000\001", '\000'
<repeats 26 times>, 
    __align = 1
  }, 
  sd_nactives = 0, 
  sd_nwriters = 0, 
  sd_nfds = 0, 
  sd_epolls = 0x0, 
  sd_index = 0x0, 
  sd_epfd = 0
}

The only other thread is waiting in pthread_join().