>>>>> On Sat, 28 Apr 2018 14:18:03 +0200, Thorsten Johannsen said:
> 
> On 26.04.2018 18:00, Martin Simmons wrote:
> >>>>>> On Thu, 26 Apr 2018 14:17:19 +0200, Thorsten Johannsen said:
> >>
> >> On 24.04.2018 18:13, Martin Simmons wrote:
> >>
> >> [...]
> >>
> >>> You could also kill the current bacula-fd process and start it under gdb, 
> >>> also
> >>> adding the -d999 argument to verify that it still gets the segfault, e.g.
> >>>
> >>> sh$ gdb ...path.to.bacula-fd...
> >>> (gdb) handle SIGSEGV
> >>> (gdb) run -f -d999
> >>>
> >>
> >> Yes, this finally elicitated some useful information (well, just my
> >> interpretation... some issue with strlen() ??
> >>
> >> ---------------------------------------------------------------------------------
> [...]
> >>
> >> Thread 3 "bacula-fd" received signal SIGSEGV, Segmentation fault.
> >> [Switching to Thread 0x75d63450 (LWP 4550)]
> >> strlen () at ../sysdeps/arm/armv6/strlen.S:26
> >> 26      ../sysdeps/arm/armv6/strlen.S: No such file or directory.
> > 
> > Yes, this is a good...
> > 
> >> (gdb) continue
> > 
> > ...but this was not the correct command here (sorry I should have mentioned
> > this) :-(
> > 
> > Firstly, try to install the bacula dbg packages, e.g.
> > 
> > sh$ apt-get install bacula-common-dbg bacula-fd-dbg
> > 
> 
> Well, apparantly the debug packages are not available on Raspbian:
> 
> --------------------------------------------------------------------------
> heRPI02:~ $ sudo apt-cache search bacula
> 
> bacula - network backup service - metapackage
> bacula-bscan - network backup service - bscan tool
> bacula-client - network backup service - client metapackage
> bacula-common - network backup service - common support files
> bacula-common-mysql - network backup service - MySQL common files
> bacula-common-pgsql - network backup service - PostgreSQL common files
> bacula-common-sqlite3 - network backup service - SQLite v3 common files
> bacula-console - network backup service - text console
> bacula-console-qt - network backup service - Bacula Administration Tool
> bacula-director - network backup service - Director daemon
> bacula-director-mysql - network backup service - MySQL storage for Director
> bacula-director-pgsql - network backup service - PostgreSQL storage for 
> Director
> bacula-director-sqlite3 - network backup service - SQLite 3 storage for 
> Director
> bacula-doc - Documentation for Bacula
> bacula-fd - network backup service - file daemon
> bacula-sd - network backup service - storage daemon
> bacula-server - network backup service - server metapackage
> 
> heRPI02:~ $
> -------------------------------------------------------------------------

Ah, OK.

It you are running Debian stretch, then it looks like you have to add

deb http://debug.mirrors.debian.org/debian-debug/ stretch-debug main

to /etc/apt/sources.list

and then run apt-get update to see the dbg packages.


> 
> 
> 
> 
> > Then start it under gdb again with -f -d999 and use the following commands
> > when it stops with the signal SIGSEGV:
> > 
> > bt
> > thread apply all bt
> > info all
> > x/i $pc
> > x/64i $pc-0x30
> > disass htable::insert(char*, void*)
> > 
> 
> 
> Nonetheless I tried your commands and got a lot of output this time.
> I'm just not sure how relevant this information can be without the debug 
> information...
> 
> 
> -------------------------------------------------------------------------
> heRPI02-fd: runscript.c:254-2019 runscript OK
> heRPI02-fd: job.c:752-2019 Back from run_scripts ClientBeforeJob now: OK
> heRPI02-fd: job.c:288-2019 <dird: accurate files=65860
> heRPI02-fd: job.c:311-2019 Executing Dir accurate files=65860
>   command.
> heRPI02-fd: htable.c:67-2019 malloc buf=752c5020 size=1000000 rem=435560
> heRPI02-fd: htable.c:130-2019 Leave hash_index hash=0x752c5068 
> index=59779085
> heRPI02-fd: htable.c:283-2019 Insert: hash=0 index=59779085
> heRPI02-fd: htable.c:286-2019 Insert hp=752c5030 index=3015 
> item=752c5030 offset=0
> heRPI02-fd: htable.c:293-2019 Insert hp->next=0 hp->hash=0x390280d 
> hp->key=<NULL>
> heRPI02-fd: htable.c:299-2019 Leave insert index=3015 num_items=1 key=/mnt/
> heRPI02-fd: accurate.c:230-2019 add fname=</mnt/> lstat=LMC HtB EHt C A 
> A A BAA BAA I BaqFXr BaqEVw BaqFXr A A d  delta_seq=0 chksum=
> heRPI02-fd: htable.c:130-2019 Leave hash_index hash=0x6b8b0 
> index=-1036830508
> heRPI02-fd: htable.c:283-2019 Insert: hash=3b2ac index=-1036830508
> heRPI02-fd: htable.c:286-2019 Insert hp=752c50b0 index=14281 
> item=752c50b0 offset=0
> 
> Thread 3 "bacula-fd" received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x75d63450 (LWP 16098)]
> strlen () at ../sysdeps/arm/armv6/strlen.S:26
> 26      ../sysdeps/arm/armv6/strlen.S: No such file or directory.
> (gdb)
> (gdb) bt
> #0  strlen () at ../sysdeps/arm/armv6/strlen.S:26
> #1  0x76ef9a90 in bvsnprintf(char*, int, char const*, std::__va_list) () 
> from /usr/lib/bacula/libbac-7.4.4.so
> #2  0x00000000 in ?? ()
> Backtrace stopped: previous frame identical to this frame (corrupt stack?)

It looks like it is crashing while trying to print a debug message :-(

I was beginning to suspect something like this, because several of the numbers
in the debug output look bogus.  This is caused by a bug in some of Bacula's
debug messages.

Can you try again with -d499 instead of -d999 which will avoid the htable.c
messages?

__Martin

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to