cherry-pick https://codereview.qt-project.org/#/c/224684/ to fix image slideshows in KDE Plasma

Bug #1761016 reported by Nate Graham
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
qtdeclarative-opensource-src (Ubuntu)
Fix Released
High
Simon Quigley
Bionic
Fix Released
Undecided
Unassigned

Bug Description

[Impact]

 * Due to a Qt bug, using an image slideshow for the wallpaper causes a memory leak that eventually causes the system to freeze. The severity of the leak is proportional to the speed with which images are changed in the slideshow.
 * Given the popularity of the image slideshow wallpaper feature, this is a high-profile, easily reproducible issue.
 * See https://bugs.kde.org/show_bug.cgi?id=368838 and https://codereview.qt-project.org/#/c/224684/

 * An attempt was made to backport the fix prior to Bionic's release, but this was overlooked or unsuccessful (see the history here). As a result, it now needs to be done as an SRU.

[Test Case]

 * Use KDE Plasma
 * Right-click on the desktop and choose "Configure Desktop"
 * Change the wallpaper type to "Slideshow" and choose a folder full of images
 * Click Apply
 * Wait a few days; Plasma will eventually totally freeze

[Regression Potential]

 * Regressions are unlikely given that the specific backport patch has been well-tested by many in https://bugs.kde.org/show_bug.cgi?id=368838, and the actual code fix in Qt was released to users in Qt 5.11 months ago.

Simon Quigley (tsimonq2)
Changed in qtdeclarative-opensource-src (Ubuntu RTM):
status: New → Confirmed
importance: Undecided → High
assignee: nobody → Simon Quigley (tsimonq2)
Simon Quigley (tsimonq2)
no longer affects: qtdeclarative-opensource-src (Ubuntu RTM)
Changed in qtdeclarative-opensource-src (Ubuntu):
status: New → Incomplete
status: Incomplete → Confirmed
importance: Undecided → High
assignee: nobody → Simon Quigley (tsimonq2)
Revision history for this message
Simon Quigley (tsimonq2) wrote :

This has been uploaded to Bionic.

Changed in qtdeclarative-opensource-src (Ubuntu):
status: Confirmed → Fix Committed
Revision history for this message
Nate Graham (pointedstick) wrote :

Yay, thanks!

Revision history for this message
Simon Quigley (tsimonq2) wrote :

This has migrated.

Changed in qtdeclarative-opensource-src (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Rik Mills (rikmills) wrote :

This fix was not in Qt 5.9.5. Re-opening.

Changed in qtdeclarative-opensource-src (Ubuntu):
status: Fix Released → Triaged
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qtdeclarative-opensource-src - 5.11.1-4

---------------
qtdeclarative-opensource-src (5.11.1-4) unstable; urgency=medium

  * Update symbols files with buildds' logs.

 -- Lisandro Damián Nicanor Pérez Meyer <email address hidden> Thu, 26 Jul 2018 22:09:16 -0300

Changed in qtdeclarative-opensource-src (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Nate Graham (pointedstick) wrote :

That's for 5.11.1; what about the backport to 5.9.5 for Bionic?

Changed in qtdeclarative-opensource-src (Ubuntu):
status: Fix Released → Confirmed
Changed in qtdeclarative-opensource-src (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Nate Graham (pointedstick) wrote :

Am I missing something? There is nothing to fix in qtdeclarative-opensource-src for Cosmic since it has Qt 5.11, and Qt 5.11 simply includes the fix by default.

This bug tracks cherry-picking the fix into the version of qtdeclarative-opensource-src that's in Bionic.

Revision history for this message
Dmitry Shachnev (mitya57) wrote :

You are right. The bug was fixed upstream in 5.11 so I marked the Cosmic task as fixed. For Bionic, I opened a new task and it is not fixed.

Revision history for this message
Nate Graham (pointedstick) wrote :

Thank you!

Revision history for this message
Dmitry Shachnev (mitya57) wrote :

Any chance you can update the bug description as required by the Stable Release Update procedure?

https://wiki.ubuntu.com/StableReleaseUpdates#SRU_Bug_Template

description: updated
Revision history for this message
Dmitry Shachnev (mitya57) wrote :

Thanks a lot, I will upload the fix for 5.9 tomorrow.

Revision history for this message
Nate Graham (pointedstick) wrote :

Thanks so much Dmitry!

Revision history for this message
Dmitry Shachnev (mitya57) wrote :

Uploaded, here it is in the review queue: https://launchpad.net/ubuntu/bionic/+queue?queue_state=1.

Revision history for this message
Nate Graham (pointedstick) wrote :

Fantastic, thanks so much!

Revision history for this message
Łukasz Zemczak (sil2100) wrote : Please test proposed package

Hello Nate, or anyone else affected,

Accepted qtdeclarative-opensource-src into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/qtdeclarative-opensource-src/5.9.5-0ubuntu1.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in qtdeclarative-opensource-src (Ubuntu Bionic):
status: New → Fix Committed
tags: added: verification-needed verification-needed-bionic
Revision history for this message
Nate Graham (pointedstick) wrote :

Thanks! I enabled the bionic-proposed repo and saw the package update available yesterday, but had no time available to do the update and perform tests. Now I do, but I no longer see an update to qtdeclarative-opensource-src available--just qtdeclarative5-dev and qtdeclarative5-qtquick2-plugin. Was it already accepted?

Revision history for this message
Dmitry Shachnev (mitya57) wrote :

qtdeclarative-opensource-src is a source package name, it builds multiple binary packages — you can see a list of them here: https://packages.ubuntu.com/bionic/source/qtdeclarative-opensource-src.

In this case the relevant binary package is probably libqt5quick5, but it is better to upgrade all these packages together.

Revision history for this message
Nate Graham (pointedstick) wrote :

Thanks for bearing with me.

I can confirm that the fix works after installing the relevant packages. I tested it by setting a slideshow wallpaper with a change interval of one second. Before the fix, this would cause plasmashell's memory usage to skyrocket. With the fix applied, the memory usage is stable.

tags: added: verification-done-bionic
removed: verification-needed-bionic
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for qtdeclarative-opensource-src has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package qtdeclarative-opensource-src - 5.9.5-0ubuntu1.1

---------------
qtdeclarative-opensource-src (5.9.5-0ubuntu1.1) bionic; urgency=medium

  * Cherry-pick upstream patch to fix memory leak in image slideshows in
    KDE Plasma (LP: #1761016).

 -- Dmitry Shachnev <email address hidden> Sun, 26 Aug 2018 14:32:09 +0300

Changed in qtdeclarative-opensource-src (Ubuntu Bionic):
status: Fix Committed → Fix Released
Revision history for this message
Nate Graham (pointedstick) wrote :

Thanks everyone!

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.