I just recompiled mod_perl 2.0.2 from source, and used perl Makefile.PL MP_DEBUG=1 MP_TRACE=1 to enable debugging. And after using the curinfo gdb macro mentioned in the debugging document I got this trace: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1214097728 (LWP 4241)] 0xb7a01912 in modperl_env_request_tie (my_perl=0x8186388, r=0x82110b0) at modperl_env.c:404 404 EnvMgObj = (char *)r; (gdb) curinfo 0Cannot access memory at address 0x600d (gdb) bt #0 0xb7a01912 in modperl_env_request_tie (my_perl=0x8186388, r=0x82110b0) at modperl_env.c:404 #1 0xb79ed82e in modperl_response_handler_cgi (r=0x82110b0) at mod_perl.c:1087 #2 0x08077056 in ap_run_handler () #3 0x08077452 in ap_invoke_handler () #4 0x0806941d in ap_process_request () #5 0x08064a19 in _start () #6 0x082110b0 in ?? () #7 0x00000004 in ?? () #8 0x082110b0 in ?? () #9 0x082110b0 in ?? () #10 0x00000000 in ?? () #11 0x0820b170 in ?? () #12 0x00000001 in ?? () #13 0x080c143c in ?? () #14 0x00000001 in ?? () #15 0x0820b170 in ?? () #16 0xbfbb3118 in ?? () #17 0x080818c6 in ap_run_process_connection () #18 0x080818c6 in ap_run_process_connection () #19 0x080755f9 in ap_graceful_stop_signalled () #20 0x080757bd in ap_graceful_stop_signalled () #21 0x080758aa in ap_graceful_stop_signalled () #22 0x080760ce in ap_mpm_run () #23 0x0807bb1e in main () During the PerlTrace all I noticed these lines relating to localization of variables (I have changed all identificators and hostnames/IPs, but it shouldn't really matter). modperl_env_magic_set_all: [4741/0x8185958] localizing: SCRIPT_NAME => /object.pl modperl_env_magic_set_all: [4741/0x8185958] localizing: SERVER_NAME => www.example.com modperl_env_magic_set_all: [4741/0x8185958] localizing: HTTP_REFERER => http://www.example.com/pin modperl_env_magic_set_all: [4741/0x8185958] localizing: SERVER_ADMIN =>