Bug 1296817 - Not able to run gphotoframe in fedora 23 - Segmentation fault
Not able to run gphotoframe in fedora 23 - Segmentation fault
Status: CLOSED EOL
Product: Fedora
Classification: Fedora
Component: libproxy (Show other bugs)
23
x86_64 Linux
unspecified Severity medium
: ---
: ---
Assigned To: David King
Fedora Extras Quality Assurance
:
: 1314070 (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2016-01-08 03:11 EST by Jeyabalaji
Modified: 2016-12-20 12:41 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-12-20 12:41:46 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
gdb log (244.00 KB, text/plain)
2016-01-10 12:00 EST, Mamoru TASAKA
no flags Details

  None (edit)
Description Jeyabalaji 2016-01-08 03:11:59 EST
Description of problem:
Not able to start gphotoframe in fedora 23. It was working well in fedora 22 but stopped working in fedora 23.


Version-Release number of selected component (if applicable):
Version: 2.0.2-1

How reproducible:
Install in fedora 23, open terminal run "gphotoframe".

Steps to Reproduce:
1. Install gphotoframe in fedora 23
2. Open terminal
3. Enter command "gphotoframe"

Actual results:

/usr/bin/gphotoframe:13: PyGIWarning: GtkClutter was imported without specifying a version first. Use gi.require_version('GtkClutter', '1.0') before import to ensure that the right version gets loaded.
  from gi.repository import GtkClutter
/usr/lib/python2.7/site-packages/gphotoframe/utils/authwebkit.py:2: PyGIWarning: WebKit was imported without specifying a version first. Use gi.require_version('WebKit', '3.0') before import to ensure that the right version gets loaded.
  from gi.repository import Gtk, GObject, WebKit
/usr/lib/python2.7/site-packages/gphotoframe/image/actor/map.py:2: PyGIWarning: Champlain was imported without specifying a version first. Use gi.require_version('Champlain', '0.12') before import to ensure that the right version gets loaded.
  from gi.repository import Clutter, Champlain
Segmentation fault (core dumped)


Expected results:

It should open gphotoframe application on the document.

Additional info:

System information:
Linux 4.2.8-300.fc23.x86_64
Comment 1 Mamoru TASAKA 2016-01-10 12:00 EST
Created attachment 1113336 [details]
gdb log

gdb log
Comment 2 Mamoru TASAKA 2016-01-10 12:06:42 EST
Reassigning to libproxy.

This is same as
https://github.com/maxinbjohn/libproxy/issues/146
https://github.com/maxinbjohn/libproxy/issues/212
Comment 3 Mamoru TASAKA 2016-01-10 12:11:59 EST
For gphtoframe side, for now I will modify gphotoframe to disable libproxy support.
Comment 4 Fedora Update System 2016-01-10 12:48:08 EST
gphotoframe-2.0.2-2.hg2084299dffb6.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-68f387abc0
Comment 5 Fedora Update System 2016-01-11 08:52:57 EST
gphotoframe-2.0.2-2.hg2084299dffb6.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-68f387abc0
Comment 6 Dan Winship 2016-01-14 14:49:33 EST
The underlying C++ libproxy library is thread-safe, so this looks like a problem with the python bindings.

As a workaround, using glib's Gio.ProxyResolver ought to work. (It uses libproxy underneath, but from C, so any libproxy python binding bug would be irrelevant.)
Comment 7 Fedora Update System 2016-01-20 16:55:51 EST
gphotoframe-2.0.2-2.hg2084299dffb6.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.
Comment 8 Jeyabalaji 2016-01-23 00:46:16 EST
I think it's fixed. I am able to start it and tried it with folder plugin. It works. Thanks for the fix :).
Comment 9 Fedora Admin XMLRPC Client 2016-02-26 12:53:58 EST
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.
Comment 10 Fedora Admin XMLRPC Client 2016-02-26 12:55:25 EST
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.
Comment 11 David King 2016-03-03 04:00:39 EST
*** Bug 1314070 has been marked as a duplicate of this bug. ***
Comment 12 F Wolff 2016-03-03 14:41:00 EST
I was referred here from bug 1314070. I just realised that this is not a problem on Mageia. I didn't try to reproduce the issue reported here (with gphotoframe), but the python oneliner in bug 131407 works in Mageia with python-libproxy-0.4.11-10.mga5. Hopefully that helps.

(In the sense that this was fixed in gphotoframe in stead of at the segfaulting library, bug 131407 is of course not a duplicate, since it has nothing to do with gphotoframe.)
Comment 13 David King 2016-03-04 05:43:00 EST
(In reply to F Wolff from comment #12)
> I was referred here from bug 1314070. I just realised that this is not a
> problem on Mageia. I didn't try to reproduce the issue reported here (with
> gphotoframe), but the python oneliner in bug 131407 works in Mageia with
> python-libproxy-0.4.11-10.mga5. Hopefully that helps.

The mageia package has no meaningful differences to the Fedora package, unfortunately. As the issue is a race condition relating to threads, it's quite possible for it to be difficult to reproduce.

> (In the sense that this was fixed in gphotoframe in stead of at the
> segfaulting library, bug 131407 is of course not a duplicate, since it has
> nothing to do with gphotoframe.)

The underlying issue with the libproxy Python bindings would seem to be the same.
Comment 14 F Wolff 2016-03-04 06:32:19 EST
Hi Dave. We seem to be talking past each other. I'm mentioning Mageia, because my python one-line example works perfectly on Mageia. If it is a slightly different version, it might help to isolate the problem in the code. If it is the same version and just packaging differs, then it could point to the problem in the fedora spec file or other platform issues.

My example code does not use threads and is trivial to reproduce with 100% reliability so far:

python -c "import libproxy; print libproxy.ProxyFactory().getProxies('http://fedoraproject.org')"

This always segfaults on Fedora, and never segfaults on Mageia. (I've run it hundreds of times to be sure.)

I'm concerned about marking this a duplicate, because this bug's status is now ON_QA since it was solved by disabling libproxy support in gphotoframe. So if this bug is marked fixed because gphotoframe doesn't crash any more, then my original bug will still be there.
Comment 15 David King 2016-03-04 07:51:04 EST
There is no meaningful difference in the packaging, and the Python bindings for libproxy have not been changed in several years (so there is no difference in those either).

While your example code might not use threads, if you get a stack trace of the segfault in gdb, you would see that the crash happens in pthread_mutex_lock(), exactly as described in the upstream bug. It is mentioned in that bug that the crash was only seen on 64-bit architectures (probably x86_64), and not i386, so that could be worth investigating.

I am not concerned about this bug being marked as a duplicate, because the underlying Python binding bug (or libproxy thread-safety bug) is the same, and the fixed gphotoframe update has already been released, so this bug will not be automatically closed.
Comment 16 David King 2016-03-04 12:27:59 EST
I filed an upstream pull request with a fix: https://github.com/libproxy/libproxy/pull/19

You can test this scratch build while I wait for an upstream confirmation: http://koji.fedoraproject.org/koji/taskinfo?taskID=13228879
Comment 17 Fedora Update System 2016-03-21 13:54:06 EDT
libproxy-0.4.12-2.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-8e61169dc5
Comment 18 Fedora Update System 2016-03-21 18:30:19 EDT
libproxy-0.4.12-2.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-8e61169dc5
Comment 19 Fedora Update System 2016-03-26 13:55:25 EDT
libproxy-0.4.12-2.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.
Comment 20 Fedora End Of Life 2016-11-24 09:46:41 EST
This message is a reminder that Fedora 23 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 23. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '23'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 23 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.
Comment 21 Fedora End Of Life 2016-12-20 12:41:46 EST
Fedora 23 changed to end-of-life (EOL) status on 2016-12-20. Fedora 23 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Note You need to log in before you can comment on or make changes to this bug.