Summary: | Call to pure virtual MediaObjectPrivate::aboutToDeleteBackendObject() [crash] | ||
---|---|---|---|
Product: | [Plasma] plasmashell | Reporter: | phd <phd> |
Component: | generic-crash | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED WORKSFORME | ||
Severity: | crash | CC: | myriam, nate, plasma-bugs, romain.perier, sitter |
Priority: | NOR | ||
Version: | master | ||
Target Milestone: | 1.0 | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
phd
2021-03-27 10:09:28 UTC
I rather think there's a data race in plasma_session. Specifically it creates a thread to run phonon but then never cleanly quits and/or synchronize that thread, leading to the crash you see where the global static cleanup on the initial thread wants to clean up all dangling phonon objects but that other thread has the objects in an unclear state. plasma_session needs to either: - synchronize the thread at some point - initialize and delete the phonon objects on the initial thread (though I guess that will trigger the PA waiting that the thread is trying to avoid) - use canberra instead of phonon (though I'm not sure that helps with the PA waiting either) - move the notification into a separate process Moving bug to plasma. Is this still relevant in Plasma 6? Or in a PipeWire world? Hasn't happened for a long time even in Plasma 5. And I no longer use PulseAudio either. |