perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From adam.pr...@utoronto.ca
Subject intermittent segfaults, and weird messages in the error log
Date Tue, 12 Aug 2008 22:42:24 GMT

I've been getting intermittent segfaults for a couple of days now on  
our dev server, and i'm not really sure why.  I can more or less  
reproduce them, but it's a hit or miss process.  It only seems to  
affect 2 handlers for some reason, and based on what i'm seeing it  
seems like one is some how managing to corrupt the childs  
configuration, then the other is making it segfault.

Here are some examples of the weird messages i'm seeing in the error  
log.  ZZZ::AuthSmb is a simple auth handler we've been using for years  
without any issues.  The random corruption of the name is what makes  
me thing that the config is getting corrupted, but i don't really know  
what i'm talking about.

[Tue Aug 12 09:39:06 2008] [error] lookup of 'ZZZ::AuthzSmb::8<C\n\x0c' failed
[Tue Aug 12 10:01:53 2008] [error] lookup of 'ZZZ::AuthzSmb::`' failed
[Tue Aug 12 10:05:11 2008] [error] lookup of '@\xa5J\bP\xa5J\bRESU' failed
[Tue Aug 12 10:05:52 2008] [error] lookup of '@\xa5J\bP\xa5J\bRESU' failed
[Tue Aug 12 16:13:57 2008] [error] lookup of 'ZZZ::AuthzSmb' failed
[Tue Aug 12 16:15:10 2008] [error] lookup of 'ZZZ::AuthzSmb' failed
[Tue Aug 12 16:15:17 2008] [error] lookup of 'ZZZ::AuthzSmb' failed
[Tue Aug 12 16:15:19 2008] [error] lookup of 'ZZZ::\xf8w\v\n\x0c' failed
[Tue Aug 12 16:31:36 2008] [error] lookup of 'ZZZ::AuthzSmb`\x89' failed
[Tue Aug 12 16:55:34 2008] [error] lookup of 'ZZZ::AuthzSmb\xf8\xde' failed
[Tue Aug 12 16:55:47 2008] [error] lookup of 'ZZZ::AuthzSmbX@' failed
[Tue Aug 12 17:24:32 2008] [error] lookup of 'h\xfd\xfa\t' failed

here's the backtrace or a core file with MP_DEBUG=1.  Any help would  
be appreciated, i'm at a loss.

(gdb) bt full
#0  0xb7d618cb in modperl_mgv_as_string (symbol=0x9fadc28,  
p=0x9fae240, package=0)
     at modperl_mgv.c:393
         string = 0x9fadc28 "\002"
         ptr = 0x0
         mgv = (modperl_mgv_t *) 0x2
         len = 2
#1  0xb7d56b21 in modperl_callback (handler=0x85146c0, p=0x9fae240,  
r=0x9fae280, s=0x8504330,
     args=0xa104b04) at modperl_callback.c:85
         name = 0x11 <Address 0x11 out of bounds>
         symbol = (modperl_mgv_t *) 0x9fadc28
         gv = (GV *) 0x0
         cv = (CV *) 0x0
         flags = 4
         sp = (SV **) 0xa24319c
         count = 169833880
         status = 0
         __func__ = "modperl_callback"
#2  0xb7d573ae in modperl_callback_run_handlers (idx=3, type=4,  
r=0x9fae280, c=0x0, s=0x8504330,
     pconf=0x0, plog=0x0, ptemp=0x0, run_mode=MP_HOOK_RUN_FIRST) at  
modperl_callback.c:262
         scfg = (modperl_config_srv_t *) 0x855d0d8
         dcfg = (modperl_config_dir_t *) 0x9fad130
         rcfg = (modperl_config_req_t *) 0x9faeff0
         handlers = (modperl_handler_t **) 0x9fadd00
         p = (apr_pool_t *) 0x9fae240
         av = (MpAV *) 0x9fadc88
         avp = (MpAV **) 0x9faf010
         i = 0
         status = 0
         desc = 0xb7d7c372 "PerlAuthzHandler"
         av_args = (AV *) 0xa104b04
         __func__ = "modperl_callback_run_handlers"
#3  0xb7d57848 in modperl_callback_per_dir (idx=3, r=0x9fae280,  
run_mode=MP_HOOK_RUN_FIRST)
     at modperl_callback.c:369
No locals.
#4  0xb7d731ed in modperl_authz_handler (r=0x9fae280) at modperl_hooks.c:47
No locals.
#5  0x08076867 in ap_run_auth_checker (r=0x9fae280) at request.c:78
         n = 0
         rv = 159247752
#6  0x080785d5 in ap_process_request_internal (r=0x9fae280) at request.c:198
         file_req = 0
         access_status = <value optimized out>
#7  0x08094b98 in ap_process_request (r=0x9fae280) at http_request.c:256
         access_status = 2
#8  0x08091e0e in ap_process_http_connection (c=0xa0545f0) at http_core.c:190
         r = (request_rec *) 0x9fae280
         csd = (apr_socket_t *) 0x0
#9  0x08081e27 in ap_run_process_connection (c=0xa0545f0) at connection.c:43
         n = 1
         rv = 159247752
#10 0x080a821d in child_main (child_num_arg=<value optimized out>) at  
prefork.c:650
         numdesc = 0
         pdesc = (const apr_pollfd_t *) 0x0
         current_conn = (conn_rec *) 0xa0545f0
         csd = (void *) 0xa054458
         ptrans = (apr_pool_t *) 0xa054418
         allocator = (apr_allocator_t *) 0x9f43550
         status = <value optimized out>
         i = <value optimized out>
         lr = <value optimized out>
         pollset = (apr_pollset_t *) 0xa052468
         sbh = (ap_sb_handle_t *) 0xa052460
         bucket_alloc = (apr_bucket_alloc_t *) 0x9faa230
         last_poll_idx = 0
#11 0x080a84f6 in make_child (s=0x80d4ce0, slot=4) at prefork.c:746
         pid = 0
#12 0x080a85aa in startup_children (number_to_start=1) at prefork.c:764
         i = 4
#13 0x080a91d7 in ap_mpm_run (_pconf=0x80d00a8, plog=0x810e1a0,  
s=0x80d4ce0) at prefork.c:985
         active_children = <value optimized out>
         cutoff = <value optimized out>
         index = <value optimized out>
         remaining_children_to_start = 5
         rv = <value optimized out>
#14 0x08068948 in main (argc=135061664, argv=0xa052410) at main.c:730
         c = 68 'D'
         configtestonly = 0
         confname = 0xbfbb07c0 "/www/conf/httpd.conf"
         def_server_root = 0x80b2523 "/www/apache/heavy"
         temp_error_log = 0x0
         error = <value optimized out>
         process = (process_rec *) 0x80ce130
         server_conf = <value optimized out>
         pglobal = (apr_pool_t *) 0x80ce0a0
         pconf = (apr_pool_t *) 0x80d00a8
         plog = (apr_pool_t *) 0x810e1a0
         ptemp = (apr_pool_t *) 0x80d60c0
         pcommands = (apr_pool_t *) 0x80d20b0
         opt = (apr_getopt_t *) 0x80d2150
         rv = <value optimized out>
         optarg = 0xbfbb07d7 "BackEnd"



Mime
View raw message