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

Bug #1761016 reported by Nate Graham on 2018-04-03
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
qtdeclarative-opensource-src (Ubuntu)
High
Simon Quigley
Bionic
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) on 2018-04-03
Changed in qtdeclarative-opensource-src (Ubuntu RTM):
status: New → Confirmed
importance: Undecided → High
assignee: nobody → Simon Quigley (tsimonq2)
Simon Quigley (tsimonq2) on 2018-04-09
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)
Simon Quigley (tsimonq2) wrote :

This has been uploaded to Bionic.

Changed in qtdeclarative-opensource-src (Ubuntu):
status: Confirmed → Fix Committed
Nate Graham (pointedstick) wrote :

Yay, thanks!

Simon Quigley (tsimonq2) wrote :

This has migrated.

Changed in qtdeclarative-opensource-src (Ubuntu):
status: Fix Committed → Fix Released
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
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
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
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.

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.

Nate Graham (pointedstick) wrote :

Thank you!

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
Dmitry Shachnev (mitya57) wrote :

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

Nate Graham (pointedstick) wrote :

Thanks so much Dmitry!

Dmitry Shachnev (mitya57) wrote :

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

Nate Graham (pointedstick) wrote :

Fantastic, thanks so much!

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
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?

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.

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

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.

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
Nate Graham (pointedstick) wrote :

Thanks everyone!

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

Other bug subscribers