[Bug 1712047] Re: SRU: Budgie-Welcome to support 2.7 series of webkit2gtk

Jeremy Bicha jeremy at bicha.net
Thu Sep 7 01:03:35 UTC 2017


** Description changed:

  [Impact]
- In discussion with Jeremy Bicha (https://bugs.launchpad.net/ubuntu/+source/budgie-welcome/+bug/1713210), the 2.7 or latest version of webkit2gtk is due to be SRU'd to 16.04 & 17.04.
+ In discussion with Jeremy Bicha (https://bugs.launchpad.net/ubuntu/+source/budgie-welcome/+bug/1713210), webkit2gtk 2.18 will soon be SRU'd to 16.04 & 17.04.
  
  During artful testing, budgie-welcome segmentation faulted when running
- with the 2.7 series of webkit2gtk.
+ with the webkit2gtk 2.18 betas (2.17.*).
  
  An initial workaround fix was applied to artful (LP: #1713210). Later
  discussions with upstream webkit2gtk indicated that the real reason why
  the segmentation fault occurred was due to calling GTK+ calls whilst
  inside a python thread. All GTK+ calls must be performed on the main
  loop thread.
  
  The impact of this issue is that the initial workaround fix for artful
  is no longer required and can be rewritten as recommended by upstream.
  
  The additional impact of this issue is that the 17.04 version of budgie-
  welcome would be similarly affected once new SRU'd version of webkit2gtk
  enters the archive.
  
  [Test Case]
  The code streams have slightly diverged so its not possible to cherry-pick the same patch from artful to zesty.
  Thus the debdiffs are subtly different between the two versions of budgie-welcome. The same principles have occurred to make the two debdiff's - searching for direct webkit calls and converting these to equivalent calls but on the main thread.
  
  Artful testcase: As per this bug-report, perform the following actions that are known to end with a segmentation fault.
  1. open the recommendation page
  2. open the budgie-applets page
  3. open the getting started page
  4. Install and remove a web-browser from the getting started page
  5. Install an application from the recommendation page
  6. Install and remove a budgie-applet from the budgie-applets page
  
- Zesty testcase: With the current 2.6 series of webkit2gtk, perform the following actions to ensure they continue to work - i.e. regression tests
+ Zesty testcase: With the current 2.16 series of webkit2gtk, perform the following actions to ensure they continue to work - i.e. regression tests
  1. open the recommendation page
  2. open the getting started page
  3. Install and remove a web-browser from the getting started page
  4. Install an application from the recommendation page
  
- Upgrade Zesty with a backported version of the current artful 2.7 series of webkit2gtk (i.e. the version that would cause segmentation faults).
+ Upgrade Zesty with a backported version of the current artful 2.18 series of webkit2gtk (i.e. the version that would cause segmentation faults).
  Repeat the above Zesty test case to ensure that segmentation faults do not occur
  
  [Regression Potential]
  It is possible that not all GTK+ based calls from a thread have been converted correctly and thus segmentation faults will still occur.
  The mitigation here is that Artful is still in its beta test phase and any further issues can be addressed and analysis of the zesty code-stream can be performed to confirm if the same issue is likely and thus can be fixed before webkit2gtk is SRU'd
- 
  
  [Original Description]
  On first login to Ubuntu Budgie, budgie-welcome is run.
  
  This crashes immediately.
  
  This has only started to occur since the new version of webkit2gtk was
  uploaded on Friday libwebkit2gtk-4.0-37
  
  to reproduce - login to Ubuntu Budgie.  Delete the "firstrun" file and
  then run budgie-welcome
  
  i.e.
  
  dad at dad-VirtualBox:~$ rm ~/.config/budgie-welcome/firstrun
  dad at dad-VirtualBox:~$ budgie-welcome
  1   0x7fcb99d8a287 /usr/lib/x86_64-linux-gnu/libjavascriptcoregtk-4.0.so.18(WTFCrash+0x17) [0x7fcb99d8a287]
  2   0x7fcb9aceccca /usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37(+0x63dcca) [0x7fcb9aceccca]
  3   0x7fcb9ace182c /usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37(+0x63282c) [0x7fcb9ace182c]
  4   0x7fcb9aeb9463 /usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37(webkit_web_view_run_javascript+0xc3) [0x7fcb9aeb9463]
  5   0x7fcba93d9e18 /usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call_unix64+0x4c) [0x7fcba93d9e18]
  6   0x7fcba93d987a /usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call+0x32a) [0x7fcba93d987a]
  7   0x7fcba9b6f9cc /usr/lib/python3/dist-packages/gi/_gi.cpython-36m-x86_64-linux-gnu.so(+0x2b9cc) [0x7fcba9b6f9cc]
  8   0x7fcba9b714b8 /usr/lib/python3/dist-packages/gi/_gi.cpython-36m-x86_64-linux-gnu.so(+0x2d4b8) [0x7fcba9b714b8]
  9   0x7fcba9b65209 /usr/lib/python3/dist-packages/gi/_gi.cpython-36m-x86_64-linux-gnu.so(+0x21209) [0x7fcba9b65209]
  10  0x4591b3 /usr/bin/python3(_PyObject_FastCallDict+0xa3) [0x4591b3]
  11  0x54e607 /usr/bin/python3() [0x54e607]
  12  0x552f9b /usr/bin/python3(_PyEval_EvalFrameDefault+0x36ab) [0x552f9b]
  13  0x54e4b1 /usr/bin/python3() [0x54e4b1]
  14  0x54e73d /usr/bin/python3() [0x54e73d]
  15  0x552f9b /usr/bin/python3(_PyEval_EvalFrameDefault+0x36ab) [0x552f9b]
  16  0x54da88 /usr/bin/python3() [0x54da88]
  17  0x55772e /usr/bin/python3(_PyFunction_FastCallDict+0x2be) [0x55772e]
  18  0x459531 /usr/bin/python3(_PyObject_Call_Prepend+0x231) [0x459531]
  19  0x458fbe /usr/bin/python3(PyObject_Call+0x3e) [0x458fbe]
  20  0x551497 /usr/bin/python3(_PyEval_EvalFrameDefault+0x1ba7) [0x551497]
  21  0x54da88 /usr/bin/python3() [0x54da88]
  22  0x54e9e6 /usr/bin/python3() [0x54e9e6]
  23  0x552f9b /usr/bin/python3(_PyEval_EvalFrameDefault+0x36ab) [0x552f9b]
  24  0x54da88 /usr/bin/python3() [0x54da88]
  25  0x54e9e6 /usr/bin/python3() [0x54e9e6]
  26  0x552f9b /usr/bin/python3(_PyEval_EvalFrameDefault+0x36ab) [0x552f9b]
  27  0x54da88 /usr/bin/python3() [0x54da88]
  28  0x55772e /usr/bin/python3(_PyFunction_FastCallDict+0x2be) [0x55772e]
  29  0x459531 /usr/bin/python3(_PyObject_Call_Prepend+0x231) [0x459531]
  30  0x458fbe /usr/bin/python3(PyObject_Call+0x3e) [0x458fbe]
  31  0x58db52 /usr/bin/python3() [0x58db52]
  Segmentation fault
  dad at dad-VirtualBox:~$ Error sending IPC message: Broken pipe
  
  ProblemType: Bug
  DistroRelease: Ubuntu 17.10
  Package: libwebkit2gtk-4.0-37 2.17.91-1ubuntu1
  ProcVersionSignature: Ubuntu 4.12.0-11.12-generic 4.12.5
  Uname: Linux 4.12.0-11-generic x86_64
  ApportVersion: 2.20.6-0ubuntu6
  Architecture: amd64
  CurrentDesktop: Budgie:GNOME
  Date: Mon Aug 21 11:22:08 2017
  InstallationDate: Installed on 2017-08-21 (0 days ago)
  InstallationMedia: Ubuntu-Budgie 17.10 "Artful Aardvark" - Alpha amd64 (20170820)
  SourcePackage: webkit2gtk
  UpgradeStatus: No upgrade log present (probably fresh install)

** Also affects: budgie-welcome (Ubuntu Zesty)
   Importance: Undecided
       Status: New

** Changed in: budgie-welcome (Ubuntu Zesty)
       Status: New => Triaged

** Changed in: budgie-welcome (Ubuntu Zesty)
   Importance: Undecided => High

** Changed in: budgie-welcome (Ubuntu)
   Importance: Undecided => High

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1712047

Title:
  SRU: Budgie-Welcome to support 2.7 series of webkit2gtk

Status in budgie-welcome package in Ubuntu:
  In Progress
Status in budgie-welcome source package in Zesty:
  Triaged

Bug description:
  [Impact]
  In discussion with Jeremy Bicha (https://bugs.launchpad.net/ubuntu/+source/budgie-welcome/+bug/1713210), webkit2gtk 2.18 will soon be SRU'd to 16.04 & 17.04.

  During artful testing, budgie-welcome segmentation faulted when
  running with the webkit2gtk 2.18 betas (2.17.*).

  An initial workaround fix was applied to artful (LP: #1713210). Later
  discussions with upstream webkit2gtk indicated that the real reason
  why the segmentation fault occurred was due to calling GTK+ calls
  whilst inside a python thread. All GTK+ calls must be performed on the
  main loop thread.

  The impact of this issue is that the initial workaround fix for artful
  is no longer required and can be rewritten as recommended by upstream.

  The additional impact of this issue is that the 17.04 version of
  budgie-welcome would be similarly affected once new SRU'd version of
  webkit2gtk enters the archive.

  [Test Case]
  The code streams have slightly diverged so its not possible to cherry-pick the same patch from artful to zesty.
  Thus the debdiffs are subtly different between the two versions of budgie-welcome. The same principles have occurred to make the two debdiff's - searching for direct webkit calls and converting these to equivalent calls but on the main thread.

  Artful testcase: As per this bug-report, perform the following actions that are known to end with a segmentation fault.
  1. open the recommendation page
  2. open the budgie-applets page
  3. open the getting started page
  4. Install and remove a web-browser from the getting started page
  5. Install an application from the recommendation page
  6. Install and remove a budgie-applet from the budgie-applets page

  Zesty testcase: With the current 2.16 series of webkit2gtk, perform the following actions to ensure they continue to work - i.e. regression tests
  1. open the recommendation page
  2. open the getting started page
  3. Install and remove a web-browser from the getting started page
  4. Install an application from the recommendation page

  Upgrade Zesty with a backported version of the current artful 2.18 series of webkit2gtk (i.e. the version that would cause segmentation faults).
  Repeat the above Zesty test case to ensure that segmentation faults do not occur

  [Regression Potential]
  It is possible that not all GTK+ based calls from a thread have been converted correctly and thus segmentation faults will still occur.
  The mitigation here is that Artful is still in its beta test phase and any further issues can be addressed and analysis of the zesty code-stream can be performed to confirm if the same issue is likely and thus can be fixed before webkit2gtk is SRU'd

  [Original Description]
  On first login to Ubuntu Budgie, budgie-welcome is run.

  This crashes immediately.

  This has only started to occur since the new version of webkit2gtk was
  uploaded on Friday libwebkit2gtk-4.0-37

  to reproduce - login to Ubuntu Budgie.  Delete the "firstrun" file and
  then run budgie-welcome

  i.e.

  dad at dad-VirtualBox:~$ rm ~/.config/budgie-welcome/firstrun
  dad at dad-VirtualBox:~$ budgie-welcome
  1   0x7fcb99d8a287 /usr/lib/x86_64-linux-gnu/libjavascriptcoregtk-4.0.so.18(WTFCrash+0x17) [0x7fcb99d8a287]
  2   0x7fcb9aceccca /usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37(+0x63dcca) [0x7fcb9aceccca]
  3   0x7fcb9ace182c /usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37(+0x63282c) [0x7fcb9ace182c]
  4   0x7fcb9aeb9463 /usr/lib/x86_64-linux-gnu/libwebkit2gtk-4.0.so.37(webkit_web_view_run_javascript+0xc3) [0x7fcb9aeb9463]
  5   0x7fcba93d9e18 /usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call_unix64+0x4c) [0x7fcba93d9e18]
  6   0x7fcba93d987a /usr/lib/x86_64-linux-gnu/libffi.so.6(ffi_call+0x32a) [0x7fcba93d987a]
  7   0x7fcba9b6f9cc /usr/lib/python3/dist-packages/gi/_gi.cpython-36m-x86_64-linux-gnu.so(+0x2b9cc) [0x7fcba9b6f9cc]
  8   0x7fcba9b714b8 /usr/lib/python3/dist-packages/gi/_gi.cpython-36m-x86_64-linux-gnu.so(+0x2d4b8) [0x7fcba9b714b8]
  9   0x7fcba9b65209 /usr/lib/python3/dist-packages/gi/_gi.cpython-36m-x86_64-linux-gnu.so(+0x21209) [0x7fcba9b65209]
  10  0x4591b3 /usr/bin/python3(_PyObject_FastCallDict+0xa3) [0x4591b3]
  11  0x54e607 /usr/bin/python3() [0x54e607]
  12  0x552f9b /usr/bin/python3(_PyEval_EvalFrameDefault+0x36ab) [0x552f9b]
  13  0x54e4b1 /usr/bin/python3() [0x54e4b1]
  14  0x54e73d /usr/bin/python3() [0x54e73d]
  15  0x552f9b /usr/bin/python3(_PyEval_EvalFrameDefault+0x36ab) [0x552f9b]
  16  0x54da88 /usr/bin/python3() [0x54da88]
  17  0x55772e /usr/bin/python3(_PyFunction_FastCallDict+0x2be) [0x55772e]
  18  0x459531 /usr/bin/python3(_PyObject_Call_Prepend+0x231) [0x459531]
  19  0x458fbe /usr/bin/python3(PyObject_Call+0x3e) [0x458fbe]
  20  0x551497 /usr/bin/python3(_PyEval_EvalFrameDefault+0x1ba7) [0x551497]
  21  0x54da88 /usr/bin/python3() [0x54da88]
  22  0x54e9e6 /usr/bin/python3() [0x54e9e6]
  23  0x552f9b /usr/bin/python3(_PyEval_EvalFrameDefault+0x36ab) [0x552f9b]
  24  0x54da88 /usr/bin/python3() [0x54da88]
  25  0x54e9e6 /usr/bin/python3() [0x54e9e6]
  26  0x552f9b /usr/bin/python3(_PyEval_EvalFrameDefault+0x36ab) [0x552f9b]
  27  0x54da88 /usr/bin/python3() [0x54da88]
  28  0x55772e /usr/bin/python3(_PyFunction_FastCallDict+0x2be) [0x55772e]
  29  0x459531 /usr/bin/python3(_PyObject_Call_Prepend+0x231) [0x459531]
  30  0x458fbe /usr/bin/python3(PyObject_Call+0x3e) [0x458fbe]
  31  0x58db52 /usr/bin/python3() [0x58db52]
  Segmentation fault
  dad at dad-VirtualBox:~$ Error sending IPC message: Broken pipe

  ProblemType: Bug
  DistroRelease: Ubuntu 17.10
  Package: libwebkit2gtk-4.0-37 2.17.91-1ubuntu1
  ProcVersionSignature: Ubuntu 4.12.0-11.12-generic 4.12.5
  Uname: Linux 4.12.0-11-generic x86_64
  ApportVersion: 2.20.6-0ubuntu6
  Architecture: amd64
  CurrentDesktop: Budgie:GNOME
  Date: Mon Aug 21 11:22:08 2017
  InstallationDate: Installed on 2017-08-21 (0 days ago)
  InstallationMedia: Ubuntu-Budgie 17.10 "Artful Aardvark" - Alpha amd64 (20170820)
  SourcePackage: webkit2gtk
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/budgie-welcome/+bug/1712047/+subscriptions



More information about the Ubuntu-sponsors mailing list