Oh yes.. I don't have any intention of applying the patch. I strongly believe the problem is with the compiler (or the options).. I'm trying to follow up with the compiler folks here to see what might be happening.
Thanks, -Madhu >-----Original Message----- >From: Greg Stein [mailto:[EMAIL PROTECTED] >Sent: Tuesday, June 10, 2003 5:06 PM >To: [EMAIL PROTECTED] >Subject: Re: Help with DAV SEGV > > >Those structures should remain 'const'. Please don't apply this patch. > >Thanks, >-g > >On Tue, Jun 10, 2003 at 07:33:27PM -0400, >MATHIHALLI,MADHUSUDAN (HP-Cupertino,ex1) wrote: >> I think we've identified the problem (.. and a solution >too). The problem >> was because of a faulty compiler. >> >> For those interested in knowing more about the problem : the >bug shows up >> when we forward declare a structure, and the compiler >doesn't manage the >> literals properly. >> >> The following patch helped fix the segv problem (but, the >real fix is in the >> compiler) >> >> --- repos.c@@/main/5 Tue Apr 1 17:55:55 2003 >> +++ repos.c Tue Jun 10 16:21:30 2003 >> @@ -134,8 +134,8 @@ >> extern const dav_hooks_locks dav_hooks_locks_fs; >> >> /* forward-declare the hook structures */ >> -static const dav_hooks_repository dav_hooks_repository_fs; >> -static const dav_hooks_liveprop dav_hooks_liveprop_fs; >> +static dav_hooks_repository dav_hooks_repository_fs; >> +static dav_hooks_liveprop dav_hooks_liveprop_fs; >> >> /* >> ** The namespace URIs that we use. This list and the >enumeration must >> @@ -1795,7 +1795,7 @@ >> return apr_psprintf(ctx->pool, "\"%lx\"", (unsigned long) >> ctx->finfo.mtime); >> } >> >> -static const dav_hooks_repository dav_hooks_repository_fs = >> +static dav_hooks_repository dav_hooks_repository_fs = >> { >> DEBUG_GET_HANDLER, /* normally: special GET handling >not required */ >> dav_fs_get_resource, >> @@ -2080,7 +2080,7 @@ >> } >> >> >> -static const dav_hooks_liveprop dav_hooks_liveprop_fs = >> +static dav_hooks_liveprop dav_hooks_liveprop_fs = >> { >> dav_fs_insert_prop, >> dav_fs_is_writable, >> >> >> Thanks >> -Madhu >> >> >-----Original Message----- >> >From: MATHIHALLI,MADHUSUDAN (HP-Cupertino,ex1) [mailto:[EMAIL PROTECTED] > >Sent: Tuesday, June 10, 2003 2:42 PM > >To: '[EMAIL PROTECTED]' > >Subject: Help with DAV SEGV > > > > > >Hi, > > I'm running the litmus test for WebDAV (with Apache 2.0.46), and > >seeing a strange behaviour. The tests pass for 64-bit (PA-RISC > >arch., OS Ver > >11.23 / 11.11), 64-bit (IA64 arch., OS Ver 11.22), but dumps > >core on 64-bit > >(IA64 OS Ver 11.23). (The same tests were passing with 2.0.45) > > > >Any idea what might be happening ?. > > > >(gdb) where > >#0 0x0 in <unknown_procedure> () > >warning: Attempting to unwind past bad PC 0x0 > >#1 0xc000000001e4ac90:0 in dav_get_resource (r=0x60000000001ebf50, > > label_allowed=0, use_checked_in=0, res_p=0x8fffffffef5f8f50) > > at mod_dav.c:705 > >#2 0xc000000001e4c6b0:0 in dav_method_delete (r=0x60000000001ebf50) > > at mod_dav.c:1086 > >#3 0xc000000001e5c7a0:0 in dav_handler (r=0x60000000001ebf50) > > at mod_dav.c:4512 > >#4 0x400000000005fe80:0 in ap_run_handler+0x120 () > >#5 0x4000000000061560:0 in ap_invoke_handler+0x2f0 () > >#6 0x4000000000051d80:0 in ap_process_request+0x90 () > >#7 0x40000000000429b0:0 in ap_process_http_connection+0x100 () > >#8 0x4000000000081230:0 in ap_run_process_connection+0x120 () > >#9 0x4000000000081d50:0 in ap_process_connection+0xf0 () > >#10 0x4000000000055740:0 in process_socket+0x1d0 () > >#11 0x4000000000056d80:0 in worker_thread+0x410 () > >#12 0xc000000001cb8480:0 in dummy_worker+0x70 () > > from /opt/hpws/apache/lib/libapr-0.9 > >#13 0xc0000000000b4ae0:0 in __pthread_unbound_body+0x4a0 () > > from /usr/lib/hpux64/libpthread.so.1 > >(gdb) p *conf > >$1 = {provider_name = 0xc000000001e43440 "filesystem", > > provider = 0x8fffffffef7213f0, > > dir = 0x6000000000072538 "/opt/hpws/apache/htdocs", locktimeout = 0, > > allow_depthinfinity = 0} > >(gdb) p *conf->provider > >$2 = {repos = 0xc000000001ea9610, propdb = 0x8fffffffef721120, > > locks = 0x8fffffffef721290, vsn = 0x0, binding = 0x0, search = 0x0, > > ctx = 0x0} > >(gdb) p *conf->provider->repos > >$3 = {handle_get = 0, get_resource = 0, get_parent_resource = 0, > > is_same_resource = 0, is_parent_resource = 0, open_stream = 0, > > close_stream = 0, write_stream = 0, seek_stream = 0, > >set_headers = 0, > > deliver = 0, create_collection = 0, copy_resource = 0, > >move_resource = 0, > > remove_resource = 0, walk = 0, getetag = 0, ctx = 0x0} > > -- Greg Stein, http://www.lyra.org/