>>>>> On Tue, 23 Aug 2005 14:28:53 +0200, Volker Sauer <[EMAIL PROTECTED]> said:
Volker> On Di, 23 Aug 2005, Martin Simmons <[EMAIL PROTECTED]> wrote: >> >>>>> On Tue, 23 Aug 2005 12:30:45 +0200, Kern Sibbald <[EMAIL PROTECTED]>= Volker> said: >> =20 Kern> I've now found the time to look over your debug output below. My= Volker> analysis=20 Kern> leads me to believe that what is show is "impossible". That is th= Volker> e code flow=20 Kern> as created in the source code cannot possibly do what is indicate= Volker> d in the=20 Kern> dump. What is shown in the dump is that the subroutine get_next_= Volker> jcr_ is=20 Kern> recursively called with the same argument (not possible). This w= Volker> ill almost=20 Kern> surely lead to a blocked situation. >> =20 Kern> How could this happen? Bad compiler code, an interrupt that happ= Volker> ens and=20 Kern> restarts the stack at the wrong point, memory error (I doubt), ... >> =20 >> I doubt that is really happening -- much more likely is that gdb can't >> understand the stack. Look at the other threads and you'll see that >> jobq_server appears to call jobq_server! >> =20 >> In all these cases, the extra "call" happens where there is a real call to >> something like pthread_mutex_lock. The pthread library is probably compi= Volker> led >> with too much optimization and/or insufficient debug info for gdb to >> understand the stack inside there. Volker> Some more information: Volker> For a test I got rid of /lib/tls. Obviously bacula now forks into Volker> several processes which (I assume) means, that another threading model Volker> is used (I don't know anything about threading). (I read the manual Volker> which says, that this only applies to Kernel 2.4 on Red Hat, but it's Volker> easy to do and I'll give it a try). Volker> This time bacula crashed with the following gdb output: Volker> dakar: ~ 1# gdb /usr/sbin/bacula-dir Volker> GNU gdb 6.3-debian Volker> Copyright 2004 Free Software Foundation, Inc. Volker> GDB is free software, covered by the GNU General Public License, and you Volker> are welcome to change it and/or distribute copies of it under certain Volker> conditions. Type "show copying" to see the conditions. Volker> There is absolutely no warranty for GDB. Type "show warranty" for Volker> details. Volker> This GDB was configured as "i386-linux"...Using host libthread_db Volker> library "/lib/ Volker> (gdb) run -s -f -c /etc/bacula/bacula-dir.conf Volker> Starting program: /usr/sbin/bacula-dir -s -f -c Volker> /etc/bacula/bacula-dir.conf Volker> [Thread debugging using libthread_db enabled] Volker> [New Thread 16384 (LWP 32251)] Volker> [New Thread 32769 (LWP 32255)] Volker> [New Thread 16386 (LWP 32256)] Volker> [New Thread 32771 (LWP 32257)] Volker> [New Thread 49156 (LWP 32264)] Volker> [Thread 49156 (LWP 32264) exited] Volker> [New Thread 65540 (LWP 938)] Volker> [Thread 65540 (LWP 938) exited] Volker> [New Thread 81924 (LWP 4421)] Volker> [Thread 81924 (LWP 4421) exited] Volker> [New Thread 98308 (LWP 4971)] Volker> [Thread 98308 (LWP 4971) exited] Volker> [New Thread 114692 (LWP 5488)] Volker> [New Thread 131077 (LWP 5489)] Volker> [New Thread 147462 (LWP 5491)] Volker> [New Thread 163847 (LWP 5492)] Volker> [New Thread 180232 (LWP 5496)] Volker> [New Thread 196617 (LWP 5497)] Volker> [New Thread 213002 (LWP 5499)] Volker> [New Thread 229387 (LWP 5500)] Volker> [Thread 147462 (LWP 5491) exited] Volker> Cannot find thread 147462: invalid thread handle Volker> (gdb) Volker> (gdb) Volker> ... Volker> Segmentation fault Volker> Again segfault?? It did not reload the config file or something like Volker> this... This is gdb barfing on threads and then giving the Segmentation fault, which will be either be caused by a kernel bug or a gdb bug. Might be fixed in the latest CVS of gdb, but you'll need to build that yourself from source (not difficult on Linux). __Martin ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ Bacula-users mailing list Bacula-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bacula-users