[Bug 1175037] New: Sporadic endless loop in claws-mail/RSSyl - pango or harfbuzz related?
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 Bug ID: 1175037 Summary: Sporadic endless loop in claws-mail/RSSyl - pango or harfbuzz related? Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: GNOME Assignee: gnome-bugs@suse.de Reporter: d_werner@gmx.net QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- Created attachment 840462 --> http://bugzilla.opensuse.org/attachment.cgi?id=840462&action=edit gdb backtrace of claws-mail In claws-mails (3.17.6 from Tumbleweed) RSS reader RSSyl some messages cause "endless loops". The problem happens in Tumbleweed and Leap 15.2 (in Leap 15.2 observed with claws-mail 3.17.5 from GA and also with 3.17.6 from the update - repo). But it is not identical, a message which triggers the endless loop in Tumbleweed can be viewed without problem in Leap 15.2. Luckily it is only a small percentage of messages which cause this, but if it happens claws-mail needs to be killed. Viewing the same message after the restart will trigger the problem again. In backtraces taken while in this endless loop state I always observed harfbuzz or pango related entries last on the stack. So maybe the actual problem is in this area. Attached several stack traces from claws-mail looping over the same message. 38 is the related message which caused this in Tumbleweed snapshot 20200807 which can be opened in Leap 15.2 with up to date fixes. I did not observe something similar with Leap 15.1. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c1 --- Comment #1 from Dirk Weber <d_werner@gmx.net> --- Created attachment 840463 --> http://bugzilla.opensuse.org/attachment.cgi?id=840463&action=edit gdb backtrace of claws-mail a little bit later backtrace of the same hanging endless looping claws-mail instance a little bit later -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c2 --- Comment #2 from Dirk Weber <d_werner@gmx.net> --- Created attachment 840464 --> http://bugzilla.opensuse.org/attachment.cgi?id=840464&action=edit backtrace again a little bit later backtrace of the same hanging endless looping claws-mail instance again a little bit later -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c3 --- Comment #3 from Dirk Weber <d_werner@gmx.net> --- Created attachment 840465 --> http://bugzilla.opensuse.org/attachment.cgi?id=840465&action=edit backtrace again a little bit later backtrace of the same hanging endless looping claws-mail instance again a little bit later -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c4 --- Comment #4 from Dirk Weber <d_werner@gmx.net> --- Created attachment 840466 --> http://bugzilla.opensuse.org/attachment.cgi?id=840466&action=edit gdb backtrace of claws-mail again a little bit later backtrace of the same hanging endless looping claws-mail instance a little bit later -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c5 --- Comment #5 from Dirk Weber <d_werner@gmx.net> --- Created attachment 840467 --> http://bugzilla.opensuse.org/attachment.cgi?id=840467&action=edit the RSS message which caused the endless loop in Tumbleweed the RSS message which caused the endless loop in Tumbleweed but could be viewed in Leap 15.2 without problem. (problem happens in Leap 15.2 with other messages). -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c6 --- Comment #6 from Dirk Weber <d_werner@gmx.net> --- I found an upstream bug report which describes a very similar issue: https://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=4379 And pango is considered a suspect by claws-development there. I like to clarify: I observe the problem sporadically (an article every some days) on Leap 15.2 (which does not have a bleeding edge pango) and also in Tumbleweed, but with different articles. But if an article triggers the problem on a system (e.g. Leap 15.2) then every time after killing and restarting claws-mail selecting the article again will make claws-mail "freeze" again consuming 100% CPU. So it is reproducible "per system" but not "across systems". -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c7 --- Comment #7 from Dirk Weber <d_werner@gmx.net> --- Created attachment 843198 --> http://bugzilla.opensuse.org/attachment.cgi?id=843198&action=edit An RSS article which triggers the problen on my Leap 15.2 system reproduced the bug with --debug output activated: claws-mail --debug > claws-debug.log 2>&1 For articles which are processed without problems the debug output looks like this: rssyl.c:741:RSSyl: fetch_msg '/home/user/.claws-mail/RSSyl/My Feeds (RSSyl)/Fefes Blog/1117' procheader.c:174:generic_get_one_field: empty line message/rfc822 (offset:0 length:1509 encoding: 6) text/html (offset:737 length:772 encoding: 6) procheader.c:174:generic_get_one_field: empty line procheader.c:197:generic_get_one_field: empty line textview.c:692:TIMING textview_add_part : 0s000ms textview.c:788:TIMING textview_add_part : 0s005ms textview.c:805:TIMING recursive_add_parts : 0s005ms textview.c:851:TIMING recursive_add_parts : 0s006ms textview.c:631:TIMING textview_show_part : 0s007ms summaryview.c:3823:TIMING summary_display_msg_full : 0s011ms And the article is deiplayed in the message preview. For the attached message '1116' which can not be processed the log stalls and claws-mail enters a busy loop, the message preview window is not updated, it still shows the previous article: rssyl.c:741:RSSyl: fetch_msg '/home/user/.claws-mail/RSSyl/My Feeds (RSSyl)/Fefes Blog/1116' procheader.c:174:generic_get_one_field: empty line message/rfc822 (offset:0 length:708 encoding: 6) text/html (offset:327 length:381 encoding: 6) procheader.c:174:generic_get_one_field: empty line procheader.c:197:generic_get_one_field: empty line textview.c:692:TIMING textview_add_part : 0s000ms so the textview.c lines after 692 are missing. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c8 --- Comment #8 from Dirk Weber <d_werner@gmx.net> --- Created attachment 843618 --> http://bugzilla.opensuse.org/attachment.cgi?id=843618&action=edit gdb debug sessions stepping through until the endless loop is entered with another message triggering the bug I tried to step until the location where it happens, see the log of the debug session. Using the current claws-mail version from Tumbleweed (snapshot 20201111) rpm -q claws-mail claws-mail-3.17.8-3.2.x86_64 Making a step at textview.c:1204 the endless loop is entered. Interrupting this with CTRL-C shows e.g. following locations: ^C Thread 1 "claws-mail" received signal SIGINT, Interrupt. 0x00007ffff6194188 in ?? () from /usr/lib64/libharfbuzz.so.0 ^C Thread 1 "claws-mail" received signal SIGINT, Interrupt. 0x00007ffff62edbbf in ?? () from /usr/lib64/libpangoft2-1.0.so.0 ^C Thread 1 "claws-mail" received signal SIGINT, Interrupt. 0x00007ffff6506c4d in _int_malloc () from /lib64/libc.so.6 1204: if (continue_write == FALSE) { messageview_show_partial_display( textview->messageview, textview->messageview->msginfo, mimeinfo->length); } GTK_EVENTS_FLUSH(); the last lines of stepping are reproducibly ... 1191 in textview.c (gdb) 1192 in textview.c (gdb) 1193 in textview.c (gdb) 1191 in textview.c (gdb) 1204 in textview.c (gdb) p continue_write $6 = 1 (gdb) step ^C Thread 1 "claws-mail" received signal SIGINT, Interrupt. 0x00007ffff6506c4d in _int_malloc () from /lib64/libc.so.6 (gdb) -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175037 http://bugzilla.opensuse.org/show_bug.cgi?id=1175037#c9 Dirk Weber <d_werner@gmx.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #9 from Dirk Weber <d_werner@gmx.net> --- After more than 2 months with openSUSE Leap 15.4 the problem did not occur. It seems to be resolved, maybe by the update to claws-mail 4.0.0 and what that brought along. Therefore I close the bug. -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com