Still No Go.
If anyone reading this e-mail is involved in bugs.kde.org bugzilla
management, please let the "sysadmin" know there is a perplexed
developer why on earth the following is deemed a spam, and being blocked
to the bugzilla web.
Oh, yes, please also ask whoever is responsible to list the sysadmin
address so that it would be much easier for someone to reach them.
That way, I don't have to bother the mailing list.
I have removed the stack trace with timestamp into a separate file in
the hope that submission now works. It does not.
---- when I tried to submit bugzilla entry.
Your comment has been automatically blocked as it is believed to contain
spam. Please contact Sysadmin if you believe this to be incorrect.
Please press Back and try again.
I tried a few times, removing a few strings, changing @ to AT and
removing the URL reference to the e-mail exchange at the sourceforge
archive.
To no avail...
--- begin quote ---
SUMMARY
valgrind 3.20GIT crashes due to SIGFPE while trying to run Thunderbird
mail client.
I wrote this message initially on September 22.
So "one week ago", etc. are relative to that epoch origin.
I am trying to run thunderbird mail client (TB for short) under valgrind.
TB is created from the so-called comm-central source tree.
My local source was synced with the public source tree about a week ago.
Well, I could run TB under valgrind on August 15.
Also, I believe I could run it about 10 days ago.
However, in the last few days, when I tried to run TB under valgrind,
valgrind crashed.
I suspect something has changed in the TB's binary toolchain in the last
10 days or so.
Valgrind version
Valgrind-3.20.0.GIT-90763ca763-20220522X and LibVEX
OS:
Linux version 5.18.0-4-amd64 (debian-kerne AT lists.debian.org) (gcc-11
(Debian 11.3.0-5) 11.3.0, GNU ld (GNU Binutils for Debian)
2.38.90.20220713) #1 SMP PREEMPT_DYNAMIC Debian 5.18.16-1 (2022-08-10)
It seems the binary toolchain for TB seemed to have generated debug
information that valgrind could not grok (?)
I am uploading the relvant part of the log from the test run when the
fatal error occurred.
When valgrind failed, TB was created using ordinary -g flag of gcc-10.
On a hunch, I re-created TB using -gsplit-dwarf flag to gcc..
Then, with the newly created version of TB, valgrind did not crash
although it did print
"### unhandled dwarf2 ..." warnings.
So something in the debug information in the libxul.so (about 120MB) is
not quite right when ordinary non-split dwarf information is in the object..
STEPS TO REPRODUCE
1. run valgrind to check the memory usage of thunderbird mail client
when it runs a test.
The command line is dumped in the attached log.
2. Wait for the completion of a test run.
3. valgrind crashes.
OBSERVED RESULT
SIGFPE crash.
VALGRIND INTERNAL ERROR: Valgrind received a signal 8 (SIGFPE) - exiting
See the attachment.
EXPECTED RESULT
valgrind ought to finish the execution of TB running its test successfully.
SOFTWARE/OS VERSIONS
Debian GNU/Linux.
Linux version 5.18.0-4-amd64 (debian-ker...@lists.debian.org) (gcc-11
(Debian 11.3.0-5) 11.3.0, GNU ld (GNU Binutils for Debian)
2.38.90.20220713) #1 SMP PREEMPT_DYNAMIC Debian 5.18.16-1 (2022-08-10)
Linux/KDE Plasma:
(available in About System) <--- not sure about this. My Debian XFCE4
desltop does not ahve "About System" anywhere.
I don't believe the GUI middleware has anything to do with the bug
reported here.
KDE Plasma Version:
KDE Frameworks Version:
Qt Version:
ADDITIONAL INFORMATION
As I noted above, if I recompile TB using -gsplit-dwarf flag to gcc-10,
then valgrind prints warnings about
unknown dwarf2 symbol, but it runs TB running its test to its completion.
I pass "-gdwarf-4 " to gcc.
So if something is generating dwarf2 info, it is not gcc, I think.
Maybe rust compiler being used?
rustc --version
rustc 1.63.0 (4b91a6ea7 2022-08-08)
In a discussion about this issue in valgrind-users mailing list, John
Reiser suggested a following simple work-around:
(But I think we need to do something about the "unhandled dwarf2 abbrev
code 0x25" in the long run.)
--- begin quote
> O think valgrind experienced a division by zero.
>
> readdwarf.c:
>
> if (op_code >= info.li_opcode_base) {
> op_code -= info.li_opcode_base;
> Word adv = (op_code / info.li_line_range) <--- line 831
> * info.li_min_insn_length;
> Int advAddr = adv;
> state_machine_regs.address += adv;
If you can re-build valgrind, then a quick-and-dirty work-around
might be
> Word adv = (op_code / (info.li_line_range ?: 1))
> * info.li_min_insn_length;
where "x ?: y" is a deprecated-but-useful slang for "x ? x : y".
--- end quote
TIA
PS: BTW, initially, I could not post this bug report to the kde bugzilla
due to the following error message.
==========
Your comment has been automatically blocked as it is believed to contain
spam. Please contact Sysadmin if you believe this to be incorrect.
==========
Well, it does not, and the bugzilla web does not list sysadmin address.
It was suggested in the valgrind-users mailing list that I
should move the stacktrace dump from thunderbird test suite framework
to an attachment since the timestamp string attached by the test suite
may confuse the bugzilla system, and this is what I am doing now.
--- end quote ---
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users