On Wednesday 19 August 2009 14:13:42 Marc Schoechlin wrote:
> Hi,
>
> i`m currently playing around with bacula and i have problems with the
> bat-console - it directly segfaults after starting :-(
>
> Any hints ?

Another hint.  Pull the current GIT repository and build off it.

I found that the Bacula socket class is aligned differently in Bacula core 
code and in bat (thus your seg fault) -- I don't know why, but I reordered 
the class definitions, which seems to eliminate the different alignment.  I 
sure would like to know why these alignment differences occur -- very 
worrisome.

Regards,

Kern 

>
> This is only a test-system - if i can provide additional information,
> please let me know....
>
> Compile from scratch:
> ---
> $ uname -a
> Linux ubuntu32 2.6.28-13-generic #45-Ubuntu SMP Tue Jun 30 19:49:51 UTC
> 2009 i686 GNU/Linux $ cat /etc/*rel*
> DISTRIB_ID=Ubuntu
> DISTRIB_RELEASE=9.04
> DISTRIB_CODENAME=jaunty
> DISTRIB_DESCRIPTION="Ubuntu 9.04"
>
> $ git clone git://bacula.git.sourceforge.net/gitroot/bacula
> $ cd bacula/bacula
> $ ./configure --prefix=/opt/bacula --with-sqlite3 \
>    --with-readline=/usr/include/readline/ --with-python --enable-bat \
>    --with-openssl
> $ make
> $ make install
> $ cd /opt/bacula/etc
> $ ./drop_bacula_database
> $ ./create_bacula_database
> $ ./make_bacula_tables
> $ ./bacula start
> $ /opt/bacula/sbin/bat
> Segmentation fault
> ---
>
> Directly after starting bat i get a segfault - see gdb output:
> ---
> # gdb /opt/bacula/sbin/bat
> GNU gdb 6.8-debian
> Copyright (C) 2008 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 "i486-linux-gnu"...
> (gdb) set args -s
> (gdb) run
> Starting program: /opt/bacula/sbin/bat -s
> [Thread debugging using libthread_db enabled]
> [New Thread 0xb6b38700 (LWP 11756)]
> [New Thread 0xb697cb90 (LWP 11759)]
> [New Thread 0xb5caeb90 (LWP 11760)]
>
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0xb6b38700 (LWP 11756)]
> 0xb6fb5825 in strncmp () from /lib/tls/i686/cmov/libc.so.6
> (gdb) bt
> #0  0xb6fb5825 in strncmp () from /lib/tls/i686/cmov/libc.so.6
> #1  0x08078b6d in DirComm::authenticate_director (this=0x8364f60,
> jcr=0x84b0cc0, director=0x833e488, cons=0x0, errmsg=0xbf932da4 "",
> errmsg_len=1024) at bcomm/dircomm_auth.cpp:158 #2  0x08077fa3 in
> DirComm::connect_dir (this=0x8364f60) at bcomm/dircomm.cpp:185 #3 
> 0x0807cf25 in Console::connect_dir (this=0x837a9b8) at
> console/console.cpp:124 #4  0x080618b5 in MainWin (this=0x834e658,
> parent=0x0) at mainwin.cpp:98 #5  0x08056c85 in main (argc=0,
> argv=0xbf93343c) at main.cpp:158
> (gdb) thread apply all bt
>
> Thread 3 (Thread 0xb5caeb90 (LWP 11760)):
> #0  0xb8016430 in __kernel_vsyscall ()
> #1  0xb71d0412 in pthread_cond_timedwait@@GLIBC_2.3.2 () from
> /lib/tls/i686/cmov/libpthread.so.0 #2  0xb7ff9a86 in watchdog_thread
> (arg=0x0) at watchdog.c:308
> #3  0xb7fffdc8 in lmgr_thread_launcher (x=0x8498d00) at lockmgr.c:711
> #4  0xb71cc4ff in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
> #5  0xb702249e in clone () from /lib/tls/i686/cmov/libc.so.6
>
> Thread 2 (Thread 0xb697cb90 (LWP 11759)):
> #0  0xb8016430 in __kernel_vsyscall ()
> #1  0xb71d38f6 in nanosleep () from /lib/tls/i686/cmov/libpthread.so.0
> #2  0xb7fcbb40 in bmicrosleep (sec=30, usec=0) at bsys.c:71
> #3  0xb7fffe99 in check_deadlock () at lockmgr.c:510
> #4  0xb71cc4ff in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
> #5  0xb702249e in clone () from /lib/tls/i686/cmov/libc.so.6
>
> Thread 1 (Thread 0xb6b38700 (LWP 11756)):
> #0  0xb6fb5825 in strncmp () from /lib/tls/i686/cmov/libc.so.6
> #1  0x08078b6d in DirComm::authenticate_director (this=0x8364f60,
> jcr=0x84b0cc0, director=0x833e488, cons=0x0, errmsg=0xbf932da4 "",
> errmsg_len=1024) at bcomm/dircomm_auth.cpp:158 #2  0x08077fa3 in
> DirComm::connect_dir (this=0x8364f60) at bcomm/dircomm.cpp:185 #3 
> 0x0807cf25 in Console::connect_dir (this=0x837a9b8) at
> console/console.cpp:124 #4  0x080618b5 in MainWin (this=0x834e658,
> parent=0x0) at mainwin.cpp:98 #5  0x08056c85 in main (argc=0,
> argv=0xbf93343c) at main.cpp:158
> (gdb) info locals
> No symbol table info available.
> (gdb) f 1
> #1  0x08078b6d in DirComm::authenticate_director (this=0x8364f60,
> jcr=0x84b0cc0, director=0x833e488, cons=0x0, errmsg=0xbf932da4 "",
> errmsg_len=1024) at bcomm/dircomm_auth.cpp:158 158        if
> (strncmp(dir->msg, OKhello, sizeof(OKhello)-1) != 0) { (gdb) info locals
> dir = (BSOCK *) 0x83992e0
> tls_local_need = 0
> tls_remote_need = 0
> tls_authenticate = false
> compatible = 0
> bashed_name = "*UserAgent*", '\0' <repeats 116 times>
> password = 0x833f938 "9cafad04bbb25a656c292d8b23fcdaf2"
> tls_ctx = (TLS_CONTEXT *) 0x0
> (gdb) f 2
> #2  0x08077fa3 in DirComm::connect_dir (this=0x8364f60) at
> bcomm/dircomm.cpp:185 185        if (!authenticate_director(jcr,
> m_console->m_dir, cons, buf, sizeof(buf))) { (gdb) info locals
> jcr = (JCR *) 0x84b0cc0
> heart_beat = 0
> buf =
> "\000\bK\bÈ-\223¿ô?\003¸ð ³¶\030\000\000\0004.\223¿­\000\002¸Ü\bK\b¸\bK\bØ-
>\223¿ôÏ\...@á\t·h\000\003¸\000.\223¿¶õú¶>£4¶\030àж\031¥±\005#\000\000\000l=Â
>¶ä0¶\b.\223¿1ò\030·\000\000\000\000\000\000\000\000\005\000\000\000*\002\00
>0\000\000\000\000\000\030àж!±H·\027¸Z·ÜLD·\001\000\000\000ô?\003¸ô?à·Xæ4\b\
>\/\223¿(/\223¿5\033_·\200ç4\b\004/\223¿ÌG\003¸\000\000\000\000\000\000\000\0
>00\005\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\220/\223¿
>¨%\b·"... cons = (CONRES *) 0x0
> (gdb) f 3
> #3  0x0807cf25 in Console::connect_dir (this=0x837a9b8) at
> console/console.cpp:124 124        if (dircomm->connect_dir()) {
> (gdb) info locals
> dircomm = (class DirComm *) 0x8364f60
> (gdb)
> ---



------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Bacula-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-devel

Reply via email to