do-partial-upgrade crashed with SIGSEGV under wayland

Bug #1748509 reported by Balint Reczey
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntu-release-upgrader (Ubuntu)
Fix Released
Undecided
Unassigned
update-manager (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

[Impact]

Users can't upgrade to next Ubuntu release running the upgrade GUI under Wayland if a full upgrade fails and update-manager fails back to a partial upgrade.
The backport is needed to let Artful users to upgrade to Bionic without applying workarounds manually.

[Test Case (for update-manager)]

1. Install 17.10 and all the updates available
2. TODO: Make changes to make the full upgrade fail and as a result update-manager fall back to partial upgrade.
3. Start a wayland session (Ubuntu in GDM)
4. Check that root is not listed in xhost output:
  $ xhost
  access control enabled, only authorized clients can connect
  SI:localuser:rbalint
5. If root is present, remove it:
  $ xhost -si:localuser:root
  localuser:root being removed from access control list
  $ xhost
  access control enabled, only authorized clients can connect
  SI:localuser:rbalint
6. open a terminal and run the following command:
  $ update-manager -cd
7. When you're prompted to upgrade to 18.04, accept and proceed.
  Expected result on fixed version: Upgrade starts.
  Result on unfixed version: The GUI crashes.

[Test Case (for ubuntu-release-upgrader)]

1. Install 17.10 and all the updates available
2. Start a wayland session (Ubuntu in GDM)
3. Check that root is not listed in xhost output:
  $ xhost
  access control enabled, only authorized clients can connect
  SI:localuser:rbalint
4. If root is present, remove it:
  $ xhost -si:localuser:root
  localuser:root being removed from access control list
  $ xhost
  access control enabled, only authorized clients can connect
  SI:localuser:rbalint
5. open a terminal and run the following command:
  $ /usr/lib/ubuntu-release-upgrader/do-partial-upgrade --frontend=DistUpgradeViewGtk3
6. When you're prompted to upgrade to 18.04, accept and proceed.
  Expected result on fixed version: Upgrade asks for password to raise privileges then starts.
  Result on unfixed version: The command crashes.

[Test Case (for regressions)]

Repeat the test cases running under X.org (Ubuntu on Xorg in GDM) and check that:
a. Upgrade still works
b. xhost output is not modified

[Regression Potential]

The upgrade GUI may crash in a different way when applying the workaround fails.
Do-partial-upgrade may fail to detect development or versions to upgrade to.
The workaround "xhost +si:localuser:root" may be added under Xorg as well

[Other Info]
This bug covers performing a a partial upgrade which case is not covered int the fix for LP: #1732185 .

Tags: dist-upgrade

Related branches

Balint Reczey (rbalint)
tags: added: dist-upgrade
Balint Reczey (rbalint)
Changed in ubuntu-release-upgrader (Ubuntu):
status: New → In Progress
Changed in update-manager (Ubuntu):
status: New → In Progress
Balint Reczey (rbalint)
Changed in ubuntu-release-upgrader (Ubuntu):
status: In Progress → Fix Committed
Changed in update-manager (Ubuntu):
status: In Progress → Fix Committed
Balint Reczey (rbalint)
description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:18.04.9

---------------
ubuntu-release-upgrader (1:18.04.9) bionic; urgency=medium

  [ Balint Reczey ]
  * Place .keep files in empty directories to keep them when converting the
    repo to git
  * Raise privileges in do-partial-upgrade early with pkexec and apply
    Wayland workaround when needed (LP: #1748509)

  [ Brian Murray ]
  * debian/control: have python3-distupgrade depend on sensible-utils.
    (LP: #1724224)
  * DistUpgrade/DistUpgradeController.py: In a couple of spots roll back
    changes made for the upgrade instead of just exiting.

 -- Brian Murray <email address hidden> Thu, 22 Feb 2018 13:43:35 -0800

Changed in ubuntu-release-upgrader (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package update-manager - 1:18.04.4

---------------
update-manager (1:18.04.4) bionic; urgency=medium

  [ Balint Reczey ]
  * Place .keep files in empty directories to keep them when converting the
    repo to git
  * Call do-release-upgrade without pkexec and depend on a version which
    raises privileges itself (LP: #1748509)

  [ Jeremy Bicha ]
  * update-manager: Depend on libgtk3-perl for debconf's GNOME backend.
    Drop previous Recommends on libgtk2-perl. (LP: #1607929)

 -- Balint Reczey <email address hidden> Fri, 02 Mar 2018 10:44:01 +0700

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