** Description changed:

- Test Case
- ---------
- sudo xeyes &
- sudo kill -11 $PID from above
- receive crash notification
- click "Report problem..."
- Observe nothing happen
+ [Impact]
+   * Users, already annoyed that software has crashed and they have an
+     unwanted dialog instead, are unable to click the report button to
+     let us know about the crash.
+   * Two identical-looking dialogs exist - one on the system-crash
+     path, and one spawned by the background update-notifier process.
+     The system crash one is the failing one, the update-notifier one
+     is fine.  The system crash one shows first, and users may not
+     bother to approve the second one given that the first didn't do
+     anything
+   * We receive fewer crash reports
  
- Research
- --------
- crash.c calls the following '/usr/bin/pkexec /usr/share/apport/apport-gtk' 
and this works if I call it manually so something must be awry in crash.c.
+ [Test Plan]
+   * sudo xeyes &
+   * sudo kill -11 $PID from above
+   * receive crash notification
+   * click "Report problem..."
+   * We should see the report procedure start
  
- ProblemType: Bug
- DistroRelease: Ubuntu 19.04
- Package: update-notifier 3.192.14
- ProcVersionSignature: Ubuntu 5.0.0-7.8-generic 5.0.0
- Uname: Linux 5.0.0-7-generic x86_64
- NonfreeKernelModules: zfs zunicode zavl icp zcommon znvpair
- ApportVersion: 2.20.10-0ubuntu23
- Architecture: amd64
- CurrentDesktop: MATE
- Date: Fri Mar 22 13:46:38 2019
- InstallationDate: Installed on 2018-08-10 (223 days ago)
- InstallationMedia: Ubuntu-Server 18.04.1 LTS "Bionic Beaver" - Release amd64 
(20180725)
- SourcePackage: update-notifier
- UpgradeStatus: Upgraded to disco on 2019-02-28 (21 days ago)
+ [Where problems could occur]
+   * By the nature of the supplied fix, if the report process hangs
+     around, the normal systemd cleanup procedures would fail to clean
+     it up.  This same risk is present for report processes initiated
+     on the non-system-crash report code path.
+   * Wayland is still affected even with this fix, for different reasons
+     (LP: #1947929)
+ 
+ [Other Info]
+ Q: Systemd says KillMode=process is not recommended
+ https://www.freedesktop.org/software/systemd/man/systemd.kill.html
+ 
+ In this case, killing the other processes in the control-group is part
+ of the problem.
+ 
+ The system crash dialog is a relatively simple bit of code that shows
+ a dialog, then runs a report process.  This dialog process is spawned
+ as part of a chain of processes downstream from
+ update-notifier-crash.service.
+ 
+ This dialog runs the report process using g_spawn_async().  After
+ spawning the report process, there isn't any particular reason to keep
+ the dialog process around, so it exits.  This exit is triggering the
+ KillMode behavior, and because the report process is in the control
+ group, the report process is killed.
+ 
+ Another possibility for addressing the process management is to run
+ the report process synchronously - keep the dialog process around
+ until the report is done and just make the dialog not visible.  This
+ is not a workable answer in this case because with the current gtk
+ code usage, the dialog sticks around - even after the call to
+ gtk_widget_destroy()!  This appears to be due to usage of
+ gtk_dialog_run().  Long term I recommend we modernize this code.
+ My initial fix for this LP was in that direction.
+ 
https://git.launchpad.net/~dbungert/update-notifier/commit/?id=06058d5705ed7cd636206c1ee72c376ec903fe74

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1821412

Title:
  "System program problem" report button does nothing

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/update-notifier/+bug/1821412/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to