On Sep 20, 2012, at 4:52 AM, Linos <i...@linos.es> wrote: > On 19/09/12 16:46, Guy Helmer wrote: >>> >>> Thanks for reply. >>> >>> i checked the squid_ssl_db/size because i found the empty file problem >>> searching >>> for my own problem in the mailing list, it's ok in my host, the file have >>> the >>> content "139264" right now. >>> >>> I can't found the core file, do i need to do something for it to generate? >>> maybe >>> a configure script option or squid.conf change to activate it? >>> >>> Regards, >>> Miguel Angel. >> >> I have >> >> coredump_dir /var/log/squid >> >> to get coredumps in my /var/log/squid directory. Now that I think about it, >> I don't remember if this works for ssl_crtd though -- seems like I have had >> to start "gdb ssl_crtd" and then attach to one of the ssl_crtd processes, >> then generate HTTPS traffic to trigger the request to ssl_crtd and get a >> backtrace when ssl_crtd gets the segfault signal… >> >> Guy >> > > Hi, > i have been trying to debug with gdb attaching existing process, the strange > it's that ssl_ctrd seems to exit normally in this test, here you have it > (sorry > for the spanish locale, i will use english next time, the only file with > symbols > it's ssl_crtd itself): > > -------------------------------------------------------------------------------- > GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04 > Copyright (C) 2012 Free Software Foundation, Inc. > License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. Type "show copying" > and "show warranty" for details. > This GDB was configured as "x86_64-linux-gnu". > Para las instrucciones de informe de errores, vea: > <http://bugs.launchpad.net/gdb-linaro/>. > (gdb) attach 10495 > Adjuntando a process 10495 > Leyendo símbolos desde /usr/lib/squid3/ssl_crtd...Leyendo símbolos desde > /usr/lib/debug/usr/lib/squid3/ssl_crtd...hecho. > hecho. > Leyendo símbolos desde /lib/x86_64-linux-gnu/libcrypto.so.0.9.8...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libcrypto.so.0.9.8 > Leyendo símbolos desde /usr/lib/x86_64-linux-gnu/libstdc++.so.6...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /usr/lib/x86_64-linux-gnu/libstdc++.so.6 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libgcc_s.so.1...(no se > encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libgcc_s.so.1 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libc.so.6...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libc.so.6 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libdl.so.2...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libdl.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libz.so.1...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libz.so.1 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libm.so.6...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libm.so.6 > Leyendo símbolos desde /lib64/ld-linux-x86-64.so.2...(no se encontraron > símbolos > de depuración)hecho. > Símbolos cargados para /lib64/ld-linux-x86-64.so.2 > 0x00007f3ef414f0a0 in read () from /lib/x86_64-linux-gnu/libc.so.6 > (gdb) continue > Continuando. > [Inferior 1 (process 10495) exited normally] > (gdb) bt > No stack.
You may have attached to an ssl_crtd child process that successfully ran without a crash. If you can access some sites but not others, that could happen… > > I have tried attaching to squid3 process itself and i have received a signal > here: > > GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04 > Copyright (C) 2012 Free Software Foundation, Inc. > License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. Type "show copying" > and "show warranty" for details. > This GDB was configured as "x86_64-linux-gnu". > Para las instrucciones de informe de errores, vea: > <http://bugs.launchpad.net/gdb-linaro/>. > (gdb) attach 10732 > Adjuntando a process 10732 > Leyendo símbolos desde /usr/sbin/squid3...coLeyendo símbolos desde > /usr/lib/debug/usr/sbin/squid3...ntinue > hecho. > hecho. > Leyendo símbolos desde /lib/x86_64-linux-gnu/libpthread.so.0...(no se > encontraron símbolos de depuración)hecho. > [Depuración de hilo usando libthread_db enabled] > Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". > Símbolos cargados para /lib/x86_64-linux-gnu/libpthread.so.0 > Leyendo símbolos desde /usr/lib/x86_64-linux-gnu/libxml2.so.2...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /usr/lib/x86_64-linux-gnu/libxml2.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libexpat.so.1...(no se > encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libexpat.so.1 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libssl.so.0.9.8...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libssl.so.0.9.8 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libcrypto.so.0.9.8...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libcrypto.so.0.9.8 > Leyendo símbolos desde /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 > Leyendo símbolos desde /usr/lib/x86_64-linux-gnu/libkrb5.so.3...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /usr/lib/x86_64-linux-gnu/libkrb5.so.3 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libcom_err.so.2...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libcom_err.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libcap.so.2...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libcap.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/librt.so.1...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/librt.so.1 > Leyendo símbolos desde /usr/lib/x86_64-linux-gnu/libltdl.so.7...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /usr/lib/x86_64-linux-gnu/libltdl.so.7 > Leyendo símbolos desde /usr/lib/x86_64-linux-gnu/libstdc++.so.6...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /usr/lib/x86_64-linux-gnu/libstdc++.so.6 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libm.so.6...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libm.so.6 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libgcc_s.so.1...(no se > encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libgcc_s.so.1 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libc.so.6...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libc.so.6 > Leyendo símbolos desde /lib64/ld-linux-x86-64.so.2...(no se encontraron > símbolos > de depuración)hecho. > Símbolos cargados para /lib64/ld-linux-x86-64.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libdl.so.2...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libdl.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libz.so.1...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libz.so.1 > Leyendo símbolos desde /usr/lib/x86_64-linux-gnu/libk5crypto.so.3...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 > Leyendo símbolos desde /usr/lib/x86_64-linux-gnu/libkrb5support.so.0...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libkeyutils.so.1...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libkeyutils.so.1 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libresolv.so.2...(no se > encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libresolv.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libnss_files.so.2...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libnss_files.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libnss_compat.so.2...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libnss_compat.so.2 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libnsl.so.1...(no se encontraron > símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libnsl.so.1 > Leyendo símbolos desde /lib/x86_64-linux-gnu/libnss_nis.so.2...(no se > encontraron símbolos de depuración)hecho. > Símbolos cargados para /lib/x86_64-linux-gnu/libnss_nis.so.2 > 0x00007f7d6243dac8 in poll () from /lib/x86_64-linux-gnu/libc.so.6 > (gdb) continue > Continuando. > > Program received signal SIGPIPE, Broken pipe. > 0x00007f7d647becb0 in __write_nocancel () from > /lib/x86_64-linux-gnu/libpthread.so.0 > (gdb) bt > #0 0x00007f7d647becb0 in __write_nocancel () from > /lib/x86_64-linux-gnu/libpthread.so.0 > #1 0x00007f7d63d075c5 in ?? () from /lib/x86_64-linux-gnu/libcrypto.so.0.9.8 > #2 0x00007f7d63d05247 in BIO_write () from > /lib/x86_64-linux-gnu/libcrypto.so.0.9.8 > #3 0x00007f7d63ffafc4 in ssl3_write_pending () from > /lib/x86_64-linux-gnu/libssl.so.0.9.8 > #4 0x00007f7d63ffc853 in ssl3_dispatch_alert () from > /lib/x86_64-linux-gnu/libssl.so.0.9.8 > #5 0x00007f7d63ff9442 in ssl3_shutdown () from > /lib/x86_64-linux-gnu/libssl.so.0.9.8 > #6 0x00007f7d64e8f0f4 in AsyncCall::make (this=0x7f7d687eb390) at > AsyncCall.cc:36 > #7 0x00007f7d64e92117 in AsyncCallQueue::fireNext (this=<optimized out>) at > AsyncCallQueue.cc:54 > #8 0x00007f7d64e92270 in AsyncCallQueue::fire (this=0x7f7d66f5f2c0) at > AsyncCallQueue.cc:40 > #9 0x00007f7d64d7c494 in EventLoop::runOnce (this=0x7fff630b3e60) at > EventLoop.cc:131 > #10 0x00007f7d64d7c568 in EventLoop::run (this=0x7fff630b3e60) at > EventLoop.cc:95 > #11 0x00007f7d64ddc039 in SquidMain (argc=<optimized out>, argv=<optimized > out>) > at main.cc:1500 > #12 0x00007f7d64d10b76 in SquidMainSafe (argv=<optimized out>, argc=<optimized > out>) at main.cc:1215 > #13 main (argc=<optimized out>, argv=<optimized out>) at main.cc:1207 > > Any ideas what's going on with this information? Thanks! I think this could happen normally when an ssl_crtd child exits, as the pipe breaks between squid and the ssl_crtd process. If you can figure out the protocol between squid and ssl_crtd (perhaps by setting debug_options 33,5 and see what goes into the cache.log after the string "SSL crtd request:"), you could try manually running ssl_crtd under gdb with an input request like what you would find in the cache.log and see if you can get a useful backtrace that way… Guy