Re: crash on reconfig

Dmitry Perfilyev <[email protected]> Fri, 10 Oct 2003 13:46:22 +0400
Newsgroups gmane.network.xinetd
Organization JSC Combellga
Message-ID <[email protected]>
   Sometimes it cores when call CALLBACK() for deleting service.


(gdb) where
#0  0x00021a6c in log_in_error (xh=0x952a0, error_code=391768, arg=0xd92c0) at logctl.c:65
#1  0x0003a9c4 in xlog_write (pxlog=0x952a0, buf=0xffbeec18 "EXIT: s10200 pid=3243 duration=2(sec)", len=37, flags=4) at xlog.c:195
#2  0x000217fc in svc_log_exit (sp=0xb3e90, serp=0x55b38) at log.c:213
#3  0x0002e670 in svc_postmortem (sp=0xb3e90, serp=0x55b38) at service.c:880
#4  0x0002c51c in server_end (serp=0x55b38) at server.c:300
#5  0x00028660 in sendsig (serp=0x55b38, sig=9) at reconfig.c:249
#6  0x00028728 in deliver_signal (sp=0xb3e90, sig=9) at reconfig.c:272
#7  0x00028798 in terminate_servers (sp=0xb3e90) at reconfig.c:284
#8  0x000281fc in hard_reconfig () at reconfig.c:135
#9  0x0002f584 in check_pipe () at signals.c:560
#10 0x00022218 in main_loop () at main.c:153
#11 0x00021f5c in main (argc=7, argv=0xffbef94c) at main.c:88

(gdb) list

60	 * NOTE: We could destroy the xlog at this point but we choose not to.
61	 */
62	static void log_in_error( xlog_h xh, int error_code, void *arg )
63	{
64	   struct service     *sp       = SP( arg ) ;
65	   const char         *log_id   = ( sp == NULL ) ? "common" : SVC_ID( sp ) ;
66	   const char         *func     = "log_in_error" ;


(gdb) p *sp
$2 = {
  svc_state = 49, 
  svc_ref_count = 0, 
  svc_conf = 0x1, 
  svc_fd = 1, 
  svc_running_servers = 917656, 
  svc_retry_servers = 316, 
  svc_attempts = 0, 
  svc_not_generic = 0, 
  svc_last_dgram_addr = 0x0, 
  svc_last_dgram_time = 0, 
  svc_log = 0x0
}

(gdb) f 1
#1  0x0003a9c4 in xlog_write (pxlog=0x952a0, buf=0xffbeec18 "EXIT: s10200 pid=3243 duration=2(sec)", len=37, flags=4) at xlog.c:195

(gdb) list
190		status = XL_WRITE( xp, buf, len, flags, ap ) ;
191		va_end( ap ) ;
192	
193		if ( status != XLOG_ENOERROR )
194		{
195			CALLBACK( xp, status ) ;
196		}


--
   Dmitry Perfilyev