I’m using urbackup server 2.4.12 on a linux debian buster.
A few days ago it was segfaulting.
Mar 24 01:29:51 urbackup kernel: [4520175.795706] fbackup hash[10440]: segfault at 7f26ebfe0000 ip 000055e98688afcf sp 00007f26ebfddce0 error 4 in urbackupsrv[55e9866bf000+4af000]
Mar 24 01:29:51 urbackup kernel: [4520175.795718] Code: 0f 1f 00 ba 00 10 00 00 e8 be 52 f0 ff 41 89 04 24 48 89 d8 49 f7 e5 48 c1 ea 03 48 8d 04 52 48 89 da 48 83 c3 01 48 c1 e0 02 <41> 8b 74 9f 0c 48 29 c2 4d 8d 64 96 10 41 8b 3c 24 48 39 eb 75 c3
Unfortunately that’s about everything I can tell you. There are no further logs about it or anything. Otherwise the server seems to work perfectly. No other services had problems.
I’ve started it up again. And since then it seems to be working again. Before it was working stable for months.
Would have been helpful getting a hint where to get that package from. It’s not linked anywhere in the download section. I already wanted to give up when I accidentally found it.
and then it seems that the command chances to
gdb /usr/lib/debug/usr/bin/urbackupsrv
the output after the info part is:
Line 2753 of “common/miniz.c” starts at address 0x4aeffe <tinfl_decompress+814> and ends at 0x4af001 <tinfl_decompress+817>.
Hmm, sorry I think the hex value on the right side is actually the executable size. And for the instruction we’d need to substract the offset from IP.
0x55e98688afcf-0x55e9866bf000 = 0x1CBFCF
could you run that number through info *line? Thanks!
The question is why it pointed to valid code, though… if you do gdb /usr/bin/urbackupsrv it should work btw. If it doesn’t then the debug symbols don’t match the binary and it won’t point to the correct thing.
I needed to use maintenance info sections in gdb to get the offset the exectuable is loaded into in gdb (0x00400000). Then adding that gives me 0x5cbfca, but
(gdb) info line *0x5cbfca
No line number information available for address 0x5cbfca <_ZN8TreeHash13finalize_currEv+166>
The binary isn’t compiled with debug symbols for c++ stuff
and also in other words we can’t find the reason for the segfault right now. But need to wait for it to appear again once we’ve got a proper binary? Since I’m the only one complaining so far and I’ve also had it only once in 4 months, it seems to appear only under very special conditions (Or other people just didn’t care to report).