Bug 401311

Summary: segfault while trying to add gstreamer-0_10-bml
Product: [openSUSE] openSUSE 11.0 Reporter: Stanislav Brabec <sbrabec>
Component: YaST2Assignee: Forgotten User h13THG8RK1 <forgotten_h13THG8RK1>
Status: RESOLVED DUPLICATE QA Contact: Jiri Srain <jsrain>
Severity: Critical    
Priority: P5 - None CC: forgotten_h13THG8RK1
Version: Final   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE 11.0   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Stanislav Brabec 2008-06-18 14:58:32 UTC
How to reproduce:

1) Add Packman and VideoLan repositories
2) YaST2 sw_single (under GNOME)
3) Select gstreamer-0_10-bml
4) Click to install

Crash was 100% reproducible. Note that it can have security implications.

2008-06-18 16:28:16 <3> hammer(4295) [liby2] genericfrontend.cc(signal_handler):149 got signal 15 at YCP file runlevel/ui.ycp:1380
2008-06-18 16:28:16 <3> hammer(4295) [liby2] genericfrontend.cc(log_stored_debug):73 Liberating suppressed debugging messages:
2008-06-18 16:28:16 <3> hammer(4295) [liby2] genericfrontend.cc(log_stored_debug):75 End of suppressed debugging messages
2008-06-18 16:28:16 <3> hammer(4295) [liby2] genericfrontend.cc(log_backtrace):97 Back trace:

   Frame  0: /usr/lib64/liby2.so.2  log_backtrace()
   Frame  1: /usr/lib64/liby2.so.2  signal_handler(int)
   Frame  2: /lib64/libc.so.6 [0x7fe575f25660]
   Frame  3: /lib64/libpthread.so.0(read+0x49) [0x7fe577125909]
   Frame  4: /usr/lib64/libyui.so.3  YUI::waitForUIThread()
   Frame  5: /usr/lib64/YaST2/plugin/libpy2UI.so.2  YUIFunction::evaluateCall()
   Frame  6: /usr/lib64/libycp.so.3  YEFunction::evaluate(bool)
   Frame  7: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame  8: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame  9: /usr/lib64/libycp.so.3  YSBlock::evaluate(bool)
   Frame 10: /usr/lib64/libycp.so.3  YSIf::evaluate(bool)
   Frame 11: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 12: /usr/lib64/libycp.so.3  YSBlock::evaluate(bool)
   Frame 13: /usr/lib64/libycp.so.3  YSWhile::evaluate(bool)
   Frame 14: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 15: /usr/lib64/libycp.so.3  Y2YCPFunction::evaluateCall()
   Frame 16: /usr/lib64/libycp.so.3  YEFunction::evaluate(bool)
   Frame 17: /usr/lib64/libycp.so.3  YCPCodeRep::evaluate(bool) const
   Frame 18: /usr/lib64/libycp.so.3 [0x7fe577f0e153]
   Frame 19: /usr/lib64/libycp.so.3  YEBuiltin::evaluate(bool)
   Frame 20: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame 21: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 22: /usr/lib64/libycp.so.3  Y2YCPFunction::evaluateCall()
   Frame 23: /usr/lib64/libycp.so.3  YEFunction::evaluate(bool)
   Frame 24: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame 25: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 26: /usr/lib64/libycp.so.3  YSBlock::evaluate(bool)
   Frame 27: /usr/lib64/libycp.so.3  YSWhile::evaluate(bool)
   Frame 28: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 29: /usr/lib64/libycp.so.3  Y2YCPFunction::evaluateCall()
   Frame 30: /usr/lib64/libycp.so.3  YEFunction::evaluate(bool)
   Frame 31: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame 32: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 33: /usr/lib64/libycp.so.3  Y2YCPFunction::evaluateCall()
   Frame 34: /usr/lib64/libycp.so.3  YEFunction::evaluate(bool)
   Frame 35: /usr/lib64/libycp.so.3  YCPCodeRep::evaluate(bool) const
   Frame 36: /usr/lib64/libycp.so.3 [0x7fe577f0e153]
   Frame 37: /usr/lib64/libycp.so.3  YEBuiltin::evaluate(bool)
   Frame 38: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame 39: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 40: /usr/lib64/libycp.so.3  Y2YCPFunction::evaluateCall()
   Frame 41: /usr/lib64/libycp.so.3  YEFunction::evaluate(bool)
   Frame 42: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame 43: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 44: /usr/lib64/libycp.so.3  YSBlock::evaluate(bool)
   Frame 45: /usr/lib64/libycp.so.3  YSWhile::evaluate(bool)
   Frame 46: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 47: /usr/lib64/libycp.so.3  Y2YCPFunction::evaluateCall()
   Frame 48: /usr/lib64/libycp.so.3  YEFunction::evaluate(bool)
   Frame 49: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame 50: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 51: /usr/lib64/libycp.so.3  Y2YCPFunction::evaluateCall()
   Frame 52: /usr/lib64/libycp.so.3  YEFunctionPointer::evaluate(bool)
   Frame 53: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame 54: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 55: /usr/lib64/libycp.so.3  YSBlock::evaluate(bool)
   Frame 56: /usr/lib64/libycp.so.3  YSIf::evaluate(bool)
   Frame 57: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 58: /usr/lib64/libycp.so.3  YSBlock::evaluate(bool)
   Frame 59: /usr/lib64/libycp.so.3  YSIf::evaluate(bool)
   Frame 60: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 61: /usr/lib64/libycp.so.3  Y2YCPFunction::evaluateCall()
   Frame 62: /usr/lib64/libycp.so.3  YEFunction::evaluate(bool)
   Frame 63: /usr/lib64/libycp.so.3  YSAssign::evaluate(bool)
   Frame 64: /usr/lib64/libycp.so.3  YBlock::evaluate(bool)
   Frame 65: /usr/lib64/libycp.so.3  YCPCodeRep::evaluate(bool) const
   Frame 66: /usr/lib64/YaST2/plugin/libpy2wfm.so.2  Y2WFMComponent::doActualWork(YCPList const&, Y2Component*)
   Frame 67: /usr/lib64/liby2.so.2(main+0x101a) [0x7fe577c0f75a]
   Frame 68: /lib64/libc.so.6(__libc_start_main+0xe6) [0x7fe575f11436]
   Frame 69: /usr/lib/YaST2/bin/y2base(main+0x51) [0x400659]

== End of back trace ===
Comment 1 Stanislav Brabec 2008-06-18 15:07:42 UTC
Additional notes:

- gstreamer-0_10-bml is an i586 package
- zypper in gstreamer-0_10-bml works
Comment 2 Jiri Srain 2008-06-20 10:50:26 UTC
The crash occurred while waiting for user unput, thus it can be UI-specific. Can you reproduce it with NCurses or Qt?
Comment 3 Stanislav Brabec 2008-06-20 11:33:59 UTC
It was crashing after pressing of Install button, which adds package to the list (displayed in the right part of the button) of packages for installation. There is no such button in Qt or ncurses interface.

I cannot reproduce this crash any more, even with GTK+ interface.
Comment 4 JP Rosevear 2008-06-20 13:41:23 UTC
Adding Ricardo, but if its not reproduceable, difficult to debug.
Comment 5 Forgotten User h13THG8RK1 2008-06-20 14:02:19 UTC
It could be related to bug 399465... When creating the dependencies dialog, it was accessing some garbage in the memory, which might result in a crash I guess in special circumstances.  Was there a dependencies dialog in the second try, when it worked?
Did you add that repository from within the package selector? (there is a Add repository option in the repositories combo...)
Comment 6 Jiri Srain 2008-06-23 08:48:21 UTC
Ricardo, reassigning to you, since you have clue what it is about.
Comment 7 Jiri Srain 2008-06-23 08:48:40 UTC
And setting needingo appropriately.
Comment 8 Stanislav Brabec 2008-06-23 10:18:58 UTC
Yes, there were additional dependencies needed. See y2log cut below.

I didn't change the repository, but I clicked to the combo, keeping its original value.

2008-06-18 16:50:34 <3> hammer(8986) [zypp] SATResolver.cc(solving):564 Solverrun finished with an ERROR
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(resolvePool):691 SATResolver::resolvePool() done. Ret:0
2008-06-18 16:50:34 <1> hammer(8986) [zypp] Resolver_problems.cc(problems):54 Resolver::problems()
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):990 Encountered problems! Here are the solutions:
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):990 
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):994 Problem 1:
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):995 ====================================
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):999 gstreamer-0_10-bml-0.3.0-42.pm.1.i586 requires libgstbuzztard.so.0, but this requirement cannot be provided
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):1000 ------------------------------------
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):1025 do not install gstreamer-0_10-buzztard-0.3.0-42.pm.1.x86_64
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):1188 ------------------------------------
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):1025 do not install gstreamer-0_10-bml-0.3.0-42.pm.1.i586
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):1188 ------------------------------------
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):1197 Ignore some dependencies of U_Tu_(3755)gstreamer-0_10-bml-0.3.0-42.pm.1.i586(http://ftp.skynet.be/pub/packman/suse/11.0/)
2008-06-18 16:50:34 <1> hammer(8986) [zypp] SATResolver.cc(problems):1198 ------------------------------------
2008-06-18 16:50:34 <3> hammer(8986) [liby2] genericfrontend.cc(signal_handler):149 got signal 11 at YCP file /usr/share/YaST2/clients/inst_packages.ycp:49
2008-06-18 16:50:34 <3> hammer(8986) [liby2] genericfrontend.cc(log_stored_debug):73 Liberating suppressed debugging messages:
2008-06-18 16:50:34 <3> hammer(8986) [liby2] genericfrontend.cc(log_stored_debug):75 End of suppressed debugging messages
2008-06-18 16:50:34 <3> hammer(8986) [liby2] genericfrontend.cc(log_backtrace):97 Back trace:
Comment 9 Forgotten User h13THG8RK1 2008-06-23 17:28:04 UTC
I think it's possible for bug 399465 to result in a crash. We don't have a lot to work with, so let's assume that it is. Meanwhile, you could install the RPM provide in bug 399465 and let us know if it happens again.

*** This bug has been marked as a duplicate of bug 399465 ***