Summary: | Kpat suddenly crashed | ||
---|---|---|---|
Product: | [Applications] kpat | Reporter: | Francesca Silvana Scoppio <volandofrancesca> |
Component: | general | Assignee: | Stephan Kulow <coolo> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | 0inkane, aacid, bdk, kde-games-bugs, lars.koraeus, trevor-b, viktorbir, wbauer1 |
Priority: | NOR | Keywords: | drkonqi |
Version: | 3.6 | ||
Target Milestone: | --- | ||
Platform: | Neon | ||
OS: | Linux | ||
Latest Commit: | https://commits.kde.org/kpat/d7fcc9a0c79f186118e0c20804af1f7467fc4580 | Version Fixed In: | |
Attachments: |
attachment-16672-0.html
New crash information added by DrKonqi New crash information added by DrKonqi Valgrind log of the crash |
Description
Francesca Silvana Scoppio
2018-06-19 19:37:35 UTC
Thank you for your bug report. Do you recall what kind of patience game you were playing when KPat crashed? Created attachment 113629 [details] attachment-16672-0.html Unfortunately no, since I make almost all of them ... 2018-06-28 11:14 GMT+02:00 Fabian <bugzilla_noreply@kde.org>: > https://bugs.kde.org/show_bug.cgi?id=395624 > > --- Comment #1 from Fabian <0inkane@googlemail.com> --- > Thank you for your bug report. Do you recall what kind of patience game you > were playing when KPat crashed? > > -- > You are receiving this mail because: > You reported the bug. > I am almost certain that the source of this crash was in the Freecell-Solver. As of applications 18.08, a new solver is used thanks to Shlomi Fish, so this crash should not appear anymore. Created attachment 115409 [details]
New crash information added by DrKonqi
kpat (3.6) using Qt 5.11.1
I had just finished Freecell. When I then selected a new game.Forty & Eight this always happen. But then it work OK when restarted.
I was runnub Icewn during the crash mot KDE.
-- Backtrace (Reduced):
#6 MemoryManager::new_from_block (this=0x556d75914a60, s=48) at /usr/src/debug/kpat-18.08.1-1.1.x86_64/patsolve/memory.cpp:165
#7 0x0000556d74953a37 in Solver<10ul>::pack_position (this=this@entry=0x556d768ec7e0) at /usr/include/c++/8/bits/unique_ptr.h:342
#8 0x0000556d74953eee in Solver<10ul>::insert (this=this@entry=0x556d768ec7e0, cluster=cluster@entry=0x7fff597e936c, d=0, node=node@entry=0x7fff597e9370) at /usr/include/c++/8/bits/unique_ptr.h:342
#9 0x0000556d74953fda in Solver<10ul>::new_position (this=this@entry=0x556d768ec7e0, parent=parent@entry=0x0, m=m@entry=0x7fff597e93b0) at /usr/src/debug/kpat-18.08.1-1.1.x86_64/patsolve/patsolve.cpp:907
#10 0x0000556d7495c0a6 in Solver<10ul>::doit (this=0x556d768ec7e0) at /usr/include/bits/string_fortified.h:71
Fabian, this is 18.08.1 Can you please have a look? I can add that the resolver slow down the playing. Sometimes it takes 100% of the CPU. Also it only crashes when I do freecell as the first game and the afterwards select another. If I start with any other it do not crash. But also referring to another comments here about the solver. Now it works poorly. It do not give the correct answers any more for most of the games. @Lars
> It do not give the correct answers any more for most of the games.
As the solver being wrong is a different kind of bug than a crash: Could you create a new bug report for this, ideally with a game file for a situation where this occurs?
Created attachment 121157 [details] New crash information added by DrKonqi kpat (3.6) using Qt 5.9.7 - What I was doing when the application crashed: Same as comment 4 for me. I played fourty&Eight then freecell no problems. Then switched back to Forty & Eight to get a crash. Happens every time for me. -- Backtrace (Reduced): #6 MemoryManager::new_from_block (this=0x29d21f0, s=48) at /home/trevor/rpmbuild/BUILD/kpat-19.04.1/patsolve/memory.cpp:165 #7 0x00000000004506a7 in Solver<10ul>::pack_position (this=this@entry=0x2b697d0) at /home/trevor/rpmbuild/BUILD/kpat-19.04.1/patsolve/patsolve.cpp:218 #8 0x0000000000450b3a in Solver<10ul>::insert (this=this@entry=0x2b697d0, cluster=cluster@entry=0x7ffe672f90f4, d=0, node=node@entry=0x7ffe672f90f8) at /home/trevor/rpmbuild/BUILD/kpat-19.04.1/patsolve/patsolve.cpp:889 #9 0x0000000000450c0a in Solver<10ul>::new_position (this=this@entry=0x2b697d0, parent=parent@entry=0x0, m=m@entry=0x7ffe672f9130) at /home/trevor/rpmbuild/BUILD/kpat-19.04.1/patsolve/patsolve.cpp:921 #10 0x00000000004587d7 in Solver<10ul>::doit (this=0x2b697d0) at /home/trevor/rpmbuild/BUILD/kpat-19.04.1/patsolve/patsolve.cpp:507 *** Bug 404161 has been marked as a duplicate of this bug. *** *** Bug 409100 has been marked as a duplicate of this bug. *** We really need someone reproducing this in valgrind and maybe we'll figure out what's wrong, no develop seems to be able to hit this problem. Maybe I should create an appimage/snap with sanitizers enabled and ask people who hit the bug whether they could try to reproduce it with that one. Really annoying that I cannot reproduce this locally... I've run it with sanitizers and nothing, but yeah maybe they're really doing something different than i do, so if you have time it's worth a try Whar do you mean "run with sanitizers"? @Brian: Sanitizers check the program for certain kind of issues while it is being run. The hope is that this would allow us to find out what exactly is causing the crashes. However, one needs to compiler the program in a special way to use sanitizers, so that needs to be done first before we can ask anyone to run it. Created attachment 122307 [details]
Valgrind log of the crash
The crash is reliably reproducable here (with kpat 19.08.0) by finishing a FreeCell game and then start a different game (Grandfather's clock).
I attached a valgrind log.
More information about the crash: As can be seen from the valgrind log, Block is 0 in MemoryManager::new_from_block(). The crashes start with https://cgit.kde.org/kpat.git/commit/?h=Applications/18.08&id=fc1d54ced6a727382599d767e55879b6843c3456, I cannot reproduce at all with earlier git snapshots (while it now crashes every time when starting a different game after solving Freecell). AFAICS, the new Freecell solver code doesn't use MemoryManager, so presumingly it doesn't get initialized properly now in that case. PS: I just saw https://phabricator.kde.org/D23404, I'm going to give it a try. Git commit d7fcc9a0c79f186118e0c20804af1f7467fc4580 by Fabian Kosmale. Committed on 07/09/2019 at 18:47. Pushed by fabiank into branch 'master'. FcSolveSolver: cleanup ressources The FcSolveSolver did not call its free function in patsolve, leading to ressource exhaustion. M +10 -0 patsolve/abstract_fc_solve_solver.cpp https://commits.kde.org/kpat/d7fcc9a0c79f186118e0c20804af1f7467fc4580 |