Bug 864324

Summary: libsmi.so.2 exports private addMacro symbol, clashing with librpmio.so causing wireshark crash
Product: [Fedora] Fedora Reporter: Michele Baldessari <michele>
Component: libsmiAssignee: Tom "spot" Callaway <tcallawa>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 18CC: abrt-devel-list, bfields, blaffablaffa, brian, chkr, dvlasenk, dwrobel, ed.greshko, erik-fedora, gczarcinski, gilboad, hamiller, hdegoede, huzaifas, ipabelona, iprikryl, jfilak, jik, jmoskovc, jnovy, johnnypizzy, jorti, jsafrane, kentobias, kklic, kmcalpine, ktdreyer, mads, manna8u, mapcode.mind, mcepl, mcepl, metalfish, mjd+redhat, mmilata, mtoman, pcfe, pedrogfrancisco, pez, phatina, plambri, rmarko, ropalka, rpiddapa, rui.vapps, rvokal, scorpy_sk, sixerjman, spider, steinach2810, tcallawa, tichev
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: abrt_hash:1c73c76ae2ebc354eefdf134b82479fc2612ed23
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-12-20 15:03:24 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
File: core_backtrace
none
File: environ
none
File: limits
none
File: backtrace
none
File: cgroup
none
File: maps
none
File: dso_list
none
File: build_ids
none
File: proc_pid_status
none
File: var_log_messages
none
File: open_fds
none
attribute visibility patch none

Description Michele Baldessari 2012-10-09 07:16:36 UTC
Description of problem:
just launching wireshark

Version-Release number of selected component:
wireshark-gnome-1.8.2-1.fc18

Additional info:
libreport version: 2.0.15
abrt_version:   2.0.14
backtrace_rating: 4
cmdline:        wireshark md5.pcap
crash_function: addMacro
kernel:         3.6.0-3.fc18.x86_64

truncated backtrace:
:Thread no. 1 (10 frames)
: #0 addMacro at data.c:3869
: #1 rpmRebuildTargetVars at rpmrc.c:1528
: #2 rpmReadConfigFiles at rpmrc.c:1687
: #3 initModule at rpmmodule.c:297
: #4 init_rpm at rpmmodule.c:281
: #5 _PyImport_LoadDynamicModule at /usr/src/debug/Python-2.7.3/Python/importdl.c:53
: #6 load_module at /usr/src/debug/Python-2.7.3/Python/import.c:1831
: #7 import_submodule at /usr/src/debug/Python-2.7.3/Python/import.c:2595
: #8 load_next at /usr/src/debug/Python-2.7.3/Python/import.c:2415
: #9 import_module_level at /usr/src/debug/Python-2.7.3/Python/import.c:2144

Comment 1 Michele Baldessari 2012-10-09 07:16:40 UTC
Created attachment 623939 [details]
File: core_backtrace

Comment 2 Michele Baldessari 2012-10-09 07:16:43 UTC
Created attachment 623940 [details]
File: environ

Comment 3 Michele Baldessari 2012-10-09 07:16:45 UTC
Created attachment 623941 [details]
File: limits

Comment 4 Michele Baldessari 2012-10-09 07:16:48 UTC
Created attachment 623942 [details]
File: backtrace

Comment 5 Michele Baldessari 2012-10-09 07:16:50 UTC
Created attachment 623943 [details]
File: cgroup

Comment 6 Michele Baldessari 2012-10-09 07:16:54 UTC
Created attachment 623944 [details]
File: maps

Comment 7 Michele Baldessari 2012-10-09 07:16:56 UTC
Created attachment 623945 [details]
File: dso_list

Comment 8 Michele Baldessari 2012-10-09 07:16:59 UTC
Created attachment 623946 [details]
File: build_ids

Comment 9 Michele Baldessari 2012-10-09 07:17:02 UTC
Created attachment 623947 [details]
File: proc_pid_status

Comment 10 Michele Baldessari 2012-10-09 07:17:04 UTC
Created attachment 623948 [details]
File: var_log_messages

Comment 11 Michele Baldessari 2012-10-09 07:17:06 UTC
Created attachment 623949 [details]
File: open_fds

Comment 12 Štefan Gurský 2012-10-10 12:59:31 UTC
I just ran the program. It did not even fully start.

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 13 Dominique Brazziel 2012-10-11 03:29:38 UTC
Same here.  I just installed wireshark, added my user to the wireshark group, and tried to start wireshark.  The initial graphic started, loading dissectors and such, then SIGSEGV.  The first time it dumped core to the abrt daemon but I didn't get to see a report, it must have swallowed it.  I stopped abrtd and got a core dump.  Here is the backtrace:


#0  0xb48cfdf7 in addMacro () from /lib/libsmi.so.2
#1  0xb2f7a1bc in ?? () from /lib/librpm.so.2
#2  0xb2f7a722 in rpmReadConfigFiles () from /lib/librpm.so.2
#3  0xb31a1e7c in init_rpm () from /usr/lib/python2.7/site-packages/rpm/_rpmmodule.so
#4  0xb4e0bab0 in _PyImport_LoadDynamicModule () from /lib/libpython2.7.so.1.0
#5  0xb4e09888 in ?? () from /lib/libpython2.7.so.1.0
#6  0xb4e09f19 in ?? () from /lib/libpython2.7.so.1.0
#7  0xb4e0a1ac in ?? () from /lib/libpython2.7.so.1.0
#8  0xb4e0a716 in ?? () from /lib/libpython2.7.so.1.0
#9  0xb4e0ac68 in PyImport_ImportModuleLevel () from /lib/libpython2.7.so.1.0
#10 0xb4defed4 in ?? () from /lib/libpython2.7.so.1.0
#11 0xb4d99079 in PyCFunction_Call () from /lib/libpython2.7.so.1.0
#12 0xb4d5c8e1 in PyObject_Call () from /lib/libpython2.7.so.1.0
#13 0xb4df1e0c in PyEval_CallObjectWithKeywords () from /lib/libpython2.7.so.1.0
#14 0xb4df53b4 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#15 0xb4df9049 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#16 0xb4df91c4 in PyEval_EvalCode () from /lib/libpython2.7.so.1.0
#17 0xb4e08b13 in PyImport_ExecCodeModuleEx () from /lib/libpython2.7.so.1.0
#18 0xb4e08da0 in ?? () from /lib/libpython2.7.so.1.0
#19 0xb4e09b98 in ?? () from /lib/libpython2.7.so.1.0
#20 0xb4e09f19 in ?? () from /lib/libpython2.7.so.1.0
#21 0xb4e0a1ac in ?? () from /lib/libpython2.7.so.1.0
#22 0xb4e0a6d9 in ?? () from /lib/libpython2.7.so.1.0
#23 0xb4e0ac68 in PyImport_ImportModuleLevel () from /lib/libpython2.7.so.1.0
#24 0xb4defed4 in ?? () from /lib/libpython2.7.so.1.0
#25 0xb4d99079 in PyCFunction_Call () from /lib/libpython2.7.so.1.0
#26 0xb4d5c8e1 in PyObject_Call () from /lib/libpython2.7.so.1.0
#27 0xb4df1e0c in PyEval_CallObjectWithKeywords () from /lib/libpython2.7.so.1.0
#28 0xb4df53b4 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#29 0xb4df9049 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#30 0xb4df91c4 in PyEval_EvalCode () from /lib/libpython2.7.so.1.0
#31 0xb4e08b13 in PyImport_ExecCodeModuleEx () from /lib/libpython2.7.so.1.0
#32 0xb4e08da0 in ?? () from /lib/libpython2.7.so.1.0
#33 0xb4e09f19 in ?? () from /lib/libpython2.7.so.1.0
#34 0xb4e0a1ac in ?? () from /lib/libpython2.7.so.1.0
#35 0xb4e0a6d9 in ?? () from /lib/libpython2.7.so.1.0
#36 0xb4e0ac68 in PyImport_ImportModuleLevel () from /lib/libpython2.7.so.1.0
#37 0xb4defed4 in ?? () from /lib/libpython2.7.so.1.0
#38 0xb4d99079 in PyCFunction_Call () from /lib/libpython2.7.so.1.0
#39 0xb4d5c8e1 in PyObject_Call () from /lib/libpython2.7.so.1.0
#40 0xb4df1e0c in PyEval_CallObjectWithKeywords () from /lib/libpython2.7.so.1.0
#41 0xb4df53b4 in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
---Type <return> to continue, or q <return> to quit---
#42 0xb4df9049 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#43 0xb4df91c4 in PyEval_EvalCode () from /lib/libpython2.7.so.1.0
#44 0xb4e121ab in ?? () from /lib/libpython2.7.so.1.0
#45 0xb4e12efc in PyRun_StringFlags () from /lib/libpython2.7.so.1.0
#46 0xb4df76be in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#47 0xb4df9049 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#48 0xb4df730d in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#49 0xb4df9049 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#50 0xb4df730d in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#51 0xb4df77ec in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#52 0xb4df77ec in PyEval_EvalFrameEx () from /lib/libpython2.7.so.1.0
#53 0xb4df9049 in PyEval_EvalCodeEx () from /lib/libpython2.7.so.1.0
#54 0xb4df91c4 in PyEval_EvalCode () from /lib/libpython2.7.so.1.0
#55 0xb4e08b13 in PyImport_ExecCodeModuleEx () from /lib/libpython2.7.so.1.0
#56 0xb4e08da0 in ?? () from /lib/libpython2.7.so.1.0
#57 0xb4e09f19 in ?? () from /lib/libpython2.7.so.1.0
#58 0xb4e0a1ac in ?? () from /lib/libpython2.7.so.1.0
#59 0xb4e0a6d9 in ?? () from /lib/libpython2.7.so.1.0
#60 0xb4e0ac68 in PyImport_ImportModuleLevel () from /lib/libpython2.7.so.1.0
#61 0xb4defed4 in ?? () from /lib/libpython2.7.so.1.0
#62 0xb4d99079 in PyCFunction_Call () from /lib/libpython2.7.so.1.0
#63 0xb4d5c8e1 in PyObject_Call () from /lib/libpython2.7.so.1.0
#64 0xb4d5c9c5 in ?? () from /lib/libpython2.7.so.1.0
#65 0xb4d5ca51 in PyObject_CallFunction () from /lib/libpython2.7.so.1.0
#66 0xb4e0b1db in PyImport_Import () from /lib/libpython2.7.so.1.0
#67 0xb4e0b371 in PyImport_ImportModule () from /lib/libpython2.7.so.1.0
#68 0xb4e1468e in ?? () from /lib/libpython2.7.so.1.0
#69 0xb4e1512d in Py_InitializeEx () from /lib/libpython2.7.so.1.0
#70 0xb4e1541c in Py_Initialize () from /lib/libpython2.7.so.1.0
#71 0xb6b5e175 in wspy_init () at wspy_register.c:61
#72 register_all_py_protocols_func () at wspy_register.c:132
#73 0xb5e39a0a in proto_init (register_all_protocols_func=register_all_protocols_func@entry=0xb686aea0 <register_all_protocols>, 
    register_all_handoffs_func=0xb6872d00 <register_all_protocol_handoffs>, cb=cb@entry=0x8011a090 <splash_update>, client_data=client_data@entry=0x8025c260)
    at proto.c:400
#74 0xb5e164f2 in epan_init (register_all_protocols_func=0xb686aea0 <register_all_protocols>, 
    register_all_handoffs_func=0xb6872d00 <register_all_protocol_handoffs>, cb=0x8011a090 <splash_update>, client_data=client_data@entry=0x8025c260, 
    report_failure_fcn_p=0x8004c420 <failure_alert_box>, report_open_failure_fcn_p=0x8004c480 <open_failure_alert_box>, 
    report_read_failure_fcn_p=0x8004c500 <read_failure_alert_box>, report_write_failure_fcn_p=0x8004c580 <write_failure_alert_box>) at epan.c:104
#75 0x8003ea43 in main (argc=1, argv=0xbffff694) at main.c:2389
(gdb)

Comment 14 Peter Hatina 2012-10-11 12:38:11 UTC
Does the mentioned issue remain in this build: wireshark-1.8.3-1.fc18? Try downloading it from koji.

Comment 15 Michele Baldessari 2012-10-11 14:53:48 UTC
Hi Peter,

problem remains with 1.8.3:

(gdb) bt
#0  addMacro (macroname=macroname@entry=0x0, flags=flags@entry=14867, parserPtr=parserPtr@entry=0x0) at data.c:3869
#1  0x00007fffd054f8cc in rpmRebuildTargetVars (target=target@entry=0x7ffffffef8f8, canontarget=0x0) at rpmrc.c:1528
#2  0x00007fffd054fdb4 in rpmReadConfigFiles (file=file@entry=0x0, target=target@entry=0x0) at rpmrc.c:1687
#3  0x00007fffd077f915 in initModule (m=<module at remote 0x555556bf1478>) at rpmmodule.c:297
#4  init_rpm () at rpmmodule.c:281
#5  0x00007ffff07e1391 in _PyImport_LoadDynamicModule (name=name@entry=0x7fffffff0ae0 "rpm._rpm", pathname=pathname@entry=
    0x7ffffffefa10 "/usr/lib64/python2.7/site-packages/rpm/_rpmmodule.so", fp=<optimized out>) at /usr/src/debug/Python-2.7.3/Python/importdl.c:53
#6  0x00007ffff07df24c in load_module (name=name@entry=0x7fffffff0ae0 "rpm._rpm", fp=<optimized out>, pathname=pathname@entry=
    0x7ffffffefa10 "/usr/lib64/python2.7/site-packages/rpm/_rpmmodule.so", type=<optimized out>, loader=<optimized out>)
    at /usr/src/debug/Python-2.7.3/Python/import.c:1831
#7  0x00007ffff07df856 in import_submodule (mod=mod@entry=<module at remote 0x555556bc7e18>, subname=subname@entry=0x7fffffff0ae4 "_rpm", 
    fullname=fullname@entry=0x7fffffff0ae0 "rpm._rpm") at /usr/src/debug/Python-2.7.3/Python/import.c:2595
#8  0x00007ffff07dfad0 in load_next (mod=mod@entry=<module at remote 0x555556bc7e18>, altmod=altmod@entry=<module at remote 0x555556bc7e18>, 
    p_name=p_name@entry=0x7fffffff0ac8, buf=buf@entry=0x7fffffff0ae0 "rpm._rpm", p_buflen=p_buflen@entry=0x7fffffff0ad8)
    at /usr/src/debug/Python-2.7.3/Python/import.c:2415
#9  0x00007ffff07e007c in import_module_level (name=0x0, name@entry=0x555556bf4324 "rpm._rpm", globals=globals@entry=
    {'warnings': <module at remote 0x555556a51980>, '__builtins__': {'bytearray': <type at remote 0x7ffff0a62f20>, 'IndexError': <type at remote 0x7ffff0a69600>, 'all': <built-in function all>, 'vars': <built-in function vars>, 'SyntaxError': <type at remote 0x7ffff0a68f80>, 'unicode': <type at remote 0x7ffff0a7f820>, 'UnicodeDecodeError': <type at remote 0x7ffff0a69e20>, 'memoryview': <type at remote 0x7ffff0a741c0>, 'isinstance': <built-in function isinstance>, 'NameError': <type at remote 0x7ffff0a68aa0>, 'BytesWarning': <type at remote 0x7ffff0a6bea0>, 'dict': <type at remote 0x7ffff0a739e0>, 'input': <built-in function input>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type at remote 0x7ffff0a67c00>, 'StandardError': <type at remote 0x7ffff0a67580>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type at remote 0x7ffff0a6b820>, 'list': <type at remote 0x7ffff0a71420>, 'iter': <...(truncated), fromlist=fromlist@entry=('*',), 
    level=level@entry=-1, locals=<optimized out>) at /usr/src/debug/Python-2.7.3/Python/import.c:2144
#10 0x00007ffff07e05ea in PyImport_ImportModuleLevel (name=0x555556bf4324 "rpm._rpm", globals=
    {'warnings': <module at remote 0x555556a51980>, '__builtins__': {'bytearray': <type at remote 0x7ffff0a62f20>, 'IndexError': <type at remote 0x7ffff0a69600>, 'all': <built-in function all>, 'vars': <built-in function vars>, 'SyntaxError': <type at remote 0x7ffff0a68f80>, 'unicode': <type at remote 0x7ffff0a7f820>, 'UnicodeDecodeError': <type at remote 0x7ffff0a69e20>, 'memoryview': <type at remote 0x7ffff0a741c0>, 'isinstance': <built-in function isinstance>, 'NameError': <type at remote 0x7ffff0a68aa0>, 'BytesWarning': <type at remote 0x7ffff0a6bea0>, 'dict': <type at remote 0x7ffff0a739e0>, 'input': <built-in function input>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type at remote 0x7ffff0a67c00>, 'StandardError': <type at remote 0x7ffff0a67580>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type at remote 0x7ffff0a6b820>, 'list': <type at remote 0x7ffff0a71420>, 'iter': <...(truncated), locals=<optimized out>, fromlist=('*',), level=
    -1) at /usr/src/debug/Python-2.7.3/Python/import.c:2188
#11 0x00007ffff07c679f in builtin___import__ (self=<optimized out>, args=<optimized out>, kwds=<optimized out>)
    at /usr/src/debug/Python-2.7.3/Python/bltinmodule.c:49
#12 0x00007ffff073ac0e in PyObject_Call (func=func@entry=<built-in function __import__>, arg=arg@entry=
    ('rpm._rpm', {'warnings': <module at remote 0x555556a51980>, '__builtins__': {'bytearray': <type at remote 0x7ffff0a62f20>, 'IndexError': <type at remote 0x7ffff0a69600>, 'all': <built-in function all>, 'vars': <built-in function vars>, 'SyntaxError': <type at remote 0x7ffff0a68f80>, 'unicode': <type at remote 0x7ffff0a7f820>, 'UnicodeDecodeError': <type at remote 0x7ffff0a69e20>, 'memoryview': <type at remote 0x7ffff0a741c0>, 'isinstance': <built-in function isinstance>, 'NameError': <type at remote 0x7ffff0a68aa0>, 'BytesWarning': <type at remote 0x7ffff0a6bea0>, 'dict': <type at remote 0x7ffff0a739e0>, 'input': <built-in function input>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type at remote 0x7ffff0a67c00>, 'StandardError': <type at remote 0x7ffff0a67580>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type at remote 0x7ffff0a6b820>, 'list': <type at remote 0x7ffff0a7142...(truncated), kw=<optimized out>)
    at /usr/src/debug/Python-2.7.3/Objects/abstract.c:2529
#13 0x00007ffff07c8367 in PyEval_CallObjectWithKeywords (func=func@entry=<built-in function __import__>, arg=arg@entry=
    ('rpm._rpm', {'warnings': <module at remote 0x555556a51980>, '__builtins__': {'bytearray': <type at remote 0x7ffff0a62f20>, 'IndexError': <type at remote 0x7ffff0a69600>, 'all': <built-in function all>, 'vars': <built-in function vars>, 'SyntaxError': <type at remote 0x7ffff0a68f80>, 'unicode': <type at remote 0x7ffff0a7f820>, 'UnicodeDecodeError': <type at remote 0x7ffff0a69e20>, 'memoryview': <type at remote 0x7ffff0a741c0>, 'isinstance': <built-in function isinstance>, 'NameError': <type at remote 0x7ffff0a68aa0>, 'BytesWarning': <type at remote 0x7ffff0a6bea0>, 'dict': <type at remote 0x7ffff0a739e0>, 'input': <built-in function input>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type at remote 0x7ffff0a67c00>, 'StandardError': <type at remote 0x7ffff0a67580>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type at remote 0x7ffff0a6b820>, 'list': <type at remote 0x7ffff0a7142...(truncated), kw=kw@entry=0x0)
    at /usr/src/debug/Python-2.7.3/Python/ceval.c:3967
#14 0x00007ffff07ca1e1 in PyEval_EvalFrameEx (f=f@entry=
    Frame 0x555556c26da0, for file /usr/lib64/python2.7/site-packages/rpm/__init__.py, line 9, in <module> (), throwflag=throwflag@entry=0)
    at /usr/src/debug/Python-2.7.3/Python/ceval.c:2407
#15 0x00007ffff07cecbf in PyEval_EvalCodeEx (co=co@entry=0x555556bef7b0, globals=globals@entry=
    {'warnings': <module at remote 0x555556a51980>, '__builtins__': {'bytearray': <type at remote 0x7ffff0a62f20>, 'IndexError': <type at remote 0x7ffff0a69600>, 'all': <built-in function all>, 'vars': <built-in function vars>, 'SyntaxError': <type at remote 0x7ffff0a68f80>, 'unicode': <type at remote 0x7ffff0a7f820>, 'UnicodeDecodeError': <type at remote 0x7ffff0a69e20>, 'memoryview': <type at remote 0x7ffff0a741c0>, 'isinstance': <built-in function isinstance>, 'NameError': <type at remote 0x7ffff0a68aa0>, 'BytesWarning': <type at remote 0x7ffff0a6bea0>, 'dict': <type at remote 0x7ffff0a739e0>, 'input': <built-in function input>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type at remote 0x7ffff0a67c00>, 'StandardError': <type at remote 0x7ffff0a67580>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type at remote 0x7ffff0a6b820>, 'list': <type at remote 0x7ffff0a71420>, 'iter': <...(truncated), locals=locals@entry=
    {'warnings': <module at remote 0x555556a51980>, '__builtins__': {'bytearray': <type at remote 0x7ffff0a62f20>, 'IndexError': <type at remote 0x7ffff0a69600>, 'all': <built-in function all>, 'vars': <built-in function vars>, 'SyntaxError': <type at remote 0x7ffff0a68f80>, 'unicode': <type at remote 0x7ffff0a7f820>, 'UnicodeDecodeError': <type at remote 0x7ffff0a69e20>, 'memoryview': <type at remote 0x7ffff0a741c0>, 'isinstance': <built-in function isinstance>, 'NameError': <type at remote 0x7ffff0a68aa0>, 'BytesWarning': <type at remote 0x7ffff0a6bea0>, 'dict': <type at remote 0x7ffff0a739e0>, 'input': <built-in function input>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type at remote 0x7ffff0a67c00>, 'StandardError': <type at remote 0x7ffff0a67580>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type at remote 0x7ffff0a6b820>, 'list': <type at remote 0x7ffff0a71420>, 'iter': <...(truncated), args=args@entry=0x0, argcount=argcount@entry=
    0, kws=kws@entry=0x0, kwcount=kwcount@entry=0, defs=defs@entry=0x0, defcount=defcount@entry=0, closure=closure@entry=0x0)
    at /usr/src/debug/Python-2.7.3/Python/ceval.c:3330
#16 0x00007ffff07ced92 in PyEval_EvalCode (co=co@entry=0x555556bef7b0, globals=globals@entry=
    {'warnings': <module at remote 0x555556a51980>, '__builtins__': {'bytearray': <type at remote 0x7ffff0a62f20>, 'IndexError': <type at remote 0x7ffff0a69600>, 'all': <built-in function all>, 'vars': <built-in function vars>, 'SyntaxError': <type at remote 0x7ffff0a68f80>, 'unicode': <type at remote 0x7ffff0a7f820>, 'UnicodeDecodeError': <type at remote 0x7ffff0a69e20>, 'memoryview': <type at remote 0x7ffff0a741c0>, 'isinstance': <built-in function isinstance>, 'NameError': <type at remote 0x7ffff0a68aa0>, 'BytesWarning': <type at remote 0x7ffff0a6bea0>, 'dict': <type at remote 0x7ffff0a739e0>, 'input': <built-in function input>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type at remote 0x7ffff0a67c00>, 'StandardError': <type at remote 0x7ffff0a67580>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type at remote 0x7ffff0a6b820>, 'list': <type at remote 0x7ffff0a71420>, 'iter': <...(truncated), locals=locals@entry=
    {'warnings': <module at remote 0x555556a51980>, '__builtins__': {'bytearray': <type at remote 0x7ffff0a62f20>, 'IndexError': <type at remote 0x7ffff0a69600>, 'all': <built-in function all>, 'vars': <built-in function vars>, 'SyntaxError': <type at remote 0x7ffff0a68f80>, 'unicode': <type at remote 0x7ffff0a7f820>, 'UnicodeDecodeError': <type at remote 0x7ffff0a69e20>, 'memoryview': <type at remote 0x7ffff0a741c0>, 'isinstance': <built-in function isinstance>, 'NameError': <type at remote 0x7ffff0a68aa0>, 'BytesWarning': <type at remote 0x7ffff0a6bea0>, 'dict': <type at remote 0x7ffff0a739e0>, 'input': <built-in function input>, 'oct': <built-in function oct>, 'bin': <built-in function bin>, 'SystemExit': <type at remote 0x7ffff0a67c00>, 'StandardError': <type at remote 0x7ffff0a67580>, 'format': <built-in function format>, 'repr': <built-in function repr>, 'sorted': <built-in function sorted>, 'False': False, 'RuntimeWarning': <type at remote 0x7ffff0a6b820>, 'list': <type at remote 0x7ffff0a71420>, 'iter': <...(truncated))
    at /usr/src/debug/Python-2.7.3/Python/ceval.c:689
#17 0x00007ffff07de54d in PyImport_ExecCodeModuleEx (name=name@entry=0x7fffffff51a0 "rpm", co=co@entry=<code at remote 0x555556bef7b0>, 
    pathname=pathname@entry=0x7fffffff1ff0 "/usr/lib64/python2.7/site-packages/rpm/__init__.pyc") at /usr/src/debug/Python-2.7.3/Python/import.c:681
#18 0x00007ffff07de7f3 in load_source_module (name=name@entry=0x7fffffff51a0 "rpm", pathname=
    0x7fffffff1ff0 "/usr/lib64/python2.7/site-packages/rpm/__init__.pyc", pathname@entry=
    0x7fffffff3060 "/usr/lib64/python2.7/site-packages/rpm/__init__.py", fp=<optimized out>) at /usr/src/debug/Python-2.7.3/Python/import.c:1018
...

Comment 16 Ken Dreyer 2012-10-12 01:02:36 UTC
Just launch wireshark, and the crash immediately occurs. I have two laptops with Fedora 17, on 32-bit, one 64-bit, and the crash happens on both. The same thing happens with tshark.

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
Architecture: i686
OS Release: Fedora release 17 (Beefy Miracle)

Comment 17 Michele Baldessari 2012-10-12 08:58:45 UTC
So I looked at this a little more:

#0  addMacro (macroname=macroname@entry=0x0, flags=flags@entry=47635, parserPtr=parserPtr@entry=0x0) at data.c:3869
#1  0x00007fffd05478cc in rpmRebuildTargetVars (target=target@entry=0x7ffffffef8c8, canontarget=0x0) at rpmrc.c:1528
#2  0x00007fffd0547db4 in rpmReadConfigFiles (file=file@entry=0x0, target=target@entry=0x0) at rpmrc.c:1687
#3  0x00007fffd0777915 in initModule (m=<module at remote 0x555556bed440>) at rpmmodule.c:297
#4  init_rpm () at rpmmodule.c:281

rpmRebuildTargetVards() calls addMacro which is defined in rpmio/macro.c (also note the 4 parameters):
...
addMacro(NULL, "_target", NULL, ct, RMIL_RPMRC);   
...

Yet in the trace we end up in addMacro defined in the libsmi package lib/data.c (note only three parameters appear).

So this is a case of symbols clashing here. (Although the signature of the function is different so I am not 100% sure why it is being picked up)

Comment 18 Michele Baldessari 2012-10-12 11:46:28 UTC
Some more thoughts here:

michele@marquez:~$ grep ImportModule gdb
#10 0x00007ffff07e05ea in PyImport_ImportModuleLevel (name=0x555556bf83b4 "rpm._rpm", globals=
#25 0x00007ffff07e05ea in PyImport_ImportModuleLevel (name=0x555556b056e4 "rpm", globals=
#38 0x00007ffff07e05ea in PyImport_ImportModuleLevel (name=0x555556b48194 "abrt_exception_handler", globals=
#71 0x00007ffff07e05ea in PyImport_ImportModuleLevel (name=0x555556a321d4 "site", globals={'__builtins__': <module at remote 0x5555569b5ad0>}, locals=<optimized out>, fromlist=['__doc__'], level=0) at /usr/src/debug/Python-2.7.3/Python/import.c:2188
#77 0x00007ffff07e0c5a in PyImport_ImportModule (name=name@entry=0x7ffff0830fb3 "site") at /usr/src/debug/Python-2.7.3/Python/import.c:2045

So since abrt-addon-python probably installs some exception handler here which in turns loads rpm we collide symbols.


sudo rpm -e abrt-addon-python abrt-desktop

works for me now as a workaround. Not sure which package we can blame here though ;)

Comment 19 Ken Dreyer 2012-10-12 19:28:38 UTC
I can confirm that removing the abrt-addon-python and abrt-desktop packages fixes the crash for me.

Comment 20 J. Bruce Fields 2012-10-16 12:22:01 UTC
*** Bug 866471 has been marked as a duplicate of this bug. ***

Comment 21 Peter Hatina 2012-10-22 10:16:34 UTC
*** Bug 868686 has been marked as a duplicate of this bug. ***

Comment 22 Pierguido Lambri 2012-10-22 10:28:33 UTC
I can also confirm that removing abrt-addon-python and abrt-desktop packages
works on F17 with testing packages.

Comment 23 Richard Marko 2012-10-22 10:34:48 UTC
Importing rpm lazily in abrt python hook resolves the issue.

I'm not sure if it's possible to somehow resolve the conflict on rpm/wireshark side.

Comment 24 Jan Safranek 2012-10-22 11:04:03 UTC
(In reply to comment #23)
> I'm not sure if it's possible to somehow resolve the conflict on
> rpm/wireshark side.

There may be many wireshark python scripts / plugins in the world, you cannot change them just because there is special python hook. The abrt python hook must be transparent and must not influence *any* scripts, regardless what they import and how.

Comment 25 Richard Marko 2012-10-22 11:45:11 UTC
(In reply to comment #24)
> (In reply to comment #23)
> > I'm not sure if it's possible to somehow resolve the conflict on
> > rpm/wireshark side.
> 
> There may be many wireshark python scripts / plugins in the world, you
> cannot change them just because there is special python hook. The abrt
> python hook must be transparent and must not influence *any* scripts,
> regardless what they import and how.

The main issue is not the abrt python hook itself causing problems but the name clash between rpm and libsmi as stated in comment #17.

Comment 26 Damian Wrobel 2012-10-22 16:30:21 UTC
Just launched wireshark.

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
Architecture: i686
OS Release: Fedora release 17 (Beefy Miracle)

Comment 27 Jiri Moskovcak 2012-10-22 16:50:01 UTC
(In reply to comment #24)
> (In reply to comment #23)
> > I'm not sure if it's possible to somehow resolve the conflict on
> > rpm/wireshark side.
> 
> There may be many wireshark python scripts / plugins in the world, you
> cannot change them just because there is special python hook. The abrt
> python hook must be transparent and must not influence *any* scripts,
> regardless what they import and how.

- I wonder what would happen if some of this scripts/plugins you're talking about would import rpm...

Comment 28 Jonathan Kamens 2012-10-22 20:13:13 UTC
Launching wireshark.

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 29 Pedro Francisco 2012-10-22 22:23:15 UTC
$ wireshark -> splash screen ("Registering Python Dissectors") -> crash.

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
Architecture: i686
OS Release: Fedora release 17 (Beefy Miracle)

Comment 30 Ken Tobias 2012-10-23 07:56:28 UTC
Starting wireshark.

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 31 Ken McAlpine 2012-10-23 12:15:48 UTC
started after a yum update, most likely an update to pythion

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 32 plonta 2012-10-23 13:37:05 UTC
crash at startup

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
Architecture: i686
OS Release: Fedora release 17 (Beefy Miracle)

Comment 33 Radek Vokál 2012-10-23 14:47:39 UTC
I tried to start it

backtrace_rating: 4
Package: wireshark-gnome-1.8.3-2.fc18
Architecture: i686
OS Release: Fedora release 18 (Spherical Cow)

Comment 34 Lorenzo Pistone 2012-10-23 19:49:38 UTC
Bootup wireshark.
Watch it crash when it tries to load python plugins.


backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 35 D.S. Ljungmark 2012-10-24 07:52:54 UTC
Starting up Wireshark causes this consistently.
Appears to be related to finding the "Link layer interfaces"

Current setup includes VPN running, USB modem up and active, Wifi Disabled, Ethernet disabled,  Virtual LAN interfaces up for the KVM machines


backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 36 Nehal Dattani 2012-10-24 09:10:04 UTC
I started wireshark and segfaulted.

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 37 Jakub Filak 2012-10-24 10:20:53 UTC
Fixed in git

commit 5efab8a1199138b20c878fb79c0ae990970c6b24
Author: Richard Marko <rmarko>
Date:   Thu Oct 18 14:14:11 2012 +0200

    import rpm lazily
    
    fixes rhbz#864324

Comment 38 Hans de Goede 2012-10-24 10:44:22 UTC
Hi,

I've been bitten by this too. As mentioned in comment #17 the problem is a symbol clash for the addMacro symbol between librpmio and libsmi. Changing the imports inside python to change the loading order of
the libs is really just papering over the problem, and just asking for it to return later in a different form.

I've discussed this with the rpm guys and the problem is that they are stuck with that symbol as part of their public API, they agree it sucks, but that is the way it is.

However looking at libsmi's only public header file /usr/include/smi.h addMacro is not a part of its public API, it is likely an internal use only symbol which still gets added to the symbols exported in libsmi.so.2, which is quite normal for "sloppy" build shared libs, and reasonably easy to fix.

Thus I'm changing the component for this to libsmi and updating the summary to reflect the proper root cause of this bug.

Regards,

Hans

Comment 39 metalfish 2012-10-24 12:00:33 UTC
I ran wireshark.
The only thing that comes to my mind that might affect my system is that I also ran BleachBit but I do not know if this problem showed up after that because there was a long time inbetween when I again used Wireshark.


backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 40 Tom "spot" Callaway 2012-10-24 13:40:29 UTC
(In reply to comment #38)
> Hi,
> 
> I've been bitten by this too. As mentioned in comment #17 the problem is a
> symbol clash for the addMacro symbol between librpmio and libsmi. Changing
> the imports inside python to change the loading order of
> the libs is really just papering over the problem, and just asking for it to
> return later in a different form.
> 
> I've discussed this with the rpm guys and the problem is that they are stuck
> with that symbol as part of their public API, they agree it sucks, but that
> is the way it is.
> 
> However looking at libsmi's only public header file /usr/include/smi.h
> addMacro is not a part of its public API, it is likely an internal use only
> symbol which still gets added to the symbols exported in libsmi.so.2, which
> is quite normal for "sloppy" build shared libs, and reasonably easy to fix.
> 
> Thus I'm changing the component for this to libsmi and updating the summary
> to reflect the proper root cause of this bug.

If you have a patch for this, I'll apply it right away. Otherwise, it will go in my ever lengthening todo list.

Comment 41 Jiri Moskovcak 2012-10-24 14:40:08 UTC
*** Bug 863699 has been marked as a duplicate of this bug. ***

Comment 42 Mads Kiilerich 2012-10-24 14:59:41 UTC
Even with "import rpm lazily" it takes twice as long to launch Python with abrt-addon-python installed compared to without. For a full Python application like hg it amounts to up to 40% extra. My conclusion: There is still something in abrt-addon-python that isn't done right or isn't good enough.

Comment 43 Richard Marko 2012-10-24 15:17:36 UTC
(In reply to comment #42)
> Even with "import rpm lazily" it takes twice as long to launch Python with
> abrt-addon-python installed compared to without. For a full Python
> application like hg it amounts to up to 40% extra. My conclusion: There is
> still something in abrt-addon-python that isn't done right or isn't good
> enough.

You are right, there's another import call (import inspect) causing slight delay. Fixed to load on-demand.

Comment 44 Gilboa Davara 2012-10-24 15:24:31 UTC
1. Start wireshark.

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 45 Harold Miller 2012-10-24 16:28:17 UTC
Clicked on the wireshark ICON to start application

backtrace_rating: 4
Package: wireshark-gnome-1.6.10-1.fc17
OS Release: Fedora release 17 (Beefy Miracle)

Comment 46 Michele Baldessari 2012-10-24 17:30:08 UTC
Created attachment 632899 [details]
attribute visibility patch

Here is a quick fix to make those non-API relevant symbols in lib/data.c internal. I tested this and I can use wireshark and have abrt-desktop/python at the same time

The cleaner fix to be done upstream would be to create a libsmi.version file with the exported/internal symbols and pass it to ld via libtool.

Comment 47 Tom "spot" Callaway 2012-10-24 17:38:23 UTC
I suspect strongly that libsmi upstream is MIA, as there have been no visible commits since 2008. I'm comfortable carrying this patch.

Comment 48 Michele Baldessari 2012-10-24 17:49:32 UTC
Thanks Tom. Works for me ;)

btw. fyi libsmi svn trunk (http://www.ibr.cs.tu-bs.de/svn/libsmi) has quite some action:
$ grep ^r svn-log|grep 2012|wc -l
46

Comment 49 Fedora Update System 2012-10-24 18:06:56 UTC
libsmi-0.4.8-9.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/libsmi-0.4.8-9.fc17

Comment 50 Fedora Update System 2012-10-24 18:07:10 UTC
libsmi-0.4.8-9.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/libsmi-0.4.8-9.fc16

Comment 51 Fedora Update System 2012-10-24 18:07:22 UTC
libsmi-0.4.8-9.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/libsmi-0.4.8-9.fc18

Comment 52 Fedora Update System 2012-10-26 19:30:06 UTC
Package libsmi-0.4.8-9.fc18:
* should fix your issue,
* was pushed to the Fedora 18 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing libsmi-0.4.8-9.fc18'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-16863/libsmi-0.4.8-9.fc18
then log in and leave karma (feedback).

Comment 53 Brian J. Murrell 2012-10-27 20:39:06 UTC
What about FC17 though?  I had this happen on FC17.

Comment 54 Tom "spot" Callaway 2012-10-29 02:04:16 UTC
(In reply to comment #53)
> What about FC17 though?  I had this happen on FC17.

https://admin.fedoraproject.org/updates/libsmi-0.4.8-9.fc17

Comment 55 Peter Hatina 2012-10-29 07:15:26 UTC
*** Bug 870507 has been marked as a duplicate of this bug. ***

Comment 56 Fedora Update System 2012-12-20 15:03:35 UTC
libsmi-0.4.8-9.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.