Bug 1103823
| Summary: | [abrt] Crash after migration to maildir | ||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Jiri Koten <jkoten> | ||||||||||||||||||||||||||
| Component: | evolution | Assignee: | Matthew Barnes <mbarnes> | ||||||||||||||||||||||||||
| Status: | CLOSED ERRATA | QA Contact: | Desktop QE <desktop-qa-list> | ||||||||||||||||||||||||||
| Severity: | low | Docs Contact: | |||||||||||||||||||||||||||
| Priority: | low | ||||||||||||||||||||||||||||
| Version: | 7.0 | CC: | mcrha, vbenes | ||||||||||||||||||||||||||
| Target Milestone: | rc | ||||||||||||||||||||||||||||
| Target Release: | --- | ||||||||||||||||||||||||||||
| Hardware: | x86_64 | ||||||||||||||||||||||||||||
| OS: | Unspecified | ||||||||||||||||||||||||||||
| Whiteboard: | abrt_hash:9923934d5809a0e97d9c79c2d25e0f3805813b73 | ||||||||||||||||||||||||||||
| Fixed In Version: | evolution-3.8.5-26 | Doc Type: | Bug Fix | ||||||||||||||||||||||||||
| Doc Text: |
Cause: first run (or restore of a backup) with a data from a previous evolution version
Consequence: crash after finished migration from mbox to maildir of On This Computer mail account
Fix: make sure no events are left in the main loop before freeing migration structures, to avoid use-after-free which caused the crash
Result: no crash, evolution runs properly after the migration is finished
|
Story Points: | --- | ||||||||||||||||||||||||||
| Clone Of: | Environment: | ||||||||||||||||||||||||||||
| Last Closed: | 2015-03-05 06:37:18 UTC | Type: | --- | ||||||||||||||||||||||||||
| Regression: | --- | Mount Type: | --- | ||||||||||||||||||||||||||
| Documentation: | --- | CRM: | |||||||||||||||||||||||||||
| Verified Versions: | Category: | --- | |||||||||||||||||||||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||||||||||||||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||||||||||||||||||||
| Embargoed: | |||||||||||||||||||||||||||||
| Attachments: |
|
||||||||||||||||||||||||||||
|
Description
Jiri Koten
2014-06-02 16:08:04 UTC
Created attachment 901491 [details]
File: backtrace
Created attachment 901492 [details]
File: cgroup
Created attachment 901493 [details]
File: core_backtrace
Created attachment 901494 [details]
File: dso_list
Created attachment 901495 [details]
File: environ
Created attachment 901496 [details]
File: limits
Created attachment 901497 [details]
File: maps
Created attachment 901498 [details]
File: open_fds
Created attachment 901499 [details]
File: proc_pid_status
Created attachment 901500 [details]
File: var_log_messages
Created attachment 901501 [details]
File: sosreport.tar.xz
The backtrace seems to show some ref/unref imbalance on a CamelFolder/CamelStore, but there is no indication what exactly happened. It is only some async operation end when the bug stroke. Created attachment 907244 [details]
evo patch
I managed to reproduce this, even not fully reliably. Nonetheless, I see the cause. The problem is that a CamelFolder delivers its change notifications on idle, but its store can be freed before the idle happens, because it is freed together with a temporary CamelSession in shell/e-convert-local-mail.c:324. Making sure that all what is piled is also delivered during the lifetime of the temporary CamelSession makes this work properly (no use-after-free).
I forgot to add, my most often reproducer was to restore from a backup, but uncheck [ ] Start Evolution after restore, rather run evolution on my own from a terminal (with simple `evolution`). the issue exhibited like once per 5 starts. I can provide a test build with a debug prints which can show whether the event occurred or not, if you want. Evolution still crashes after the dialog of Migration from mbox to Maildir. Backtrace looks different - see bug 1170552 Reproducer is the same. Let's deal with it there, it looks like a different issue to me too. Weird it didn't strike earlier. I would guess a change in sqlite3, but that didn't change for you. I will eventually mark that as a duplicate of this, if further investigation will prove so. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-0305.html |