Bug 428080

Summary: Segmentation fault of wvdial after modem init
Product: [Fedora] Fedora Reporter: denis ivanov <youonly>
Component: wvdialAssignee: Ondrej Vasik <ovasik>
Status: CLOSED INSUFFICIENT_DATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: low    
Version: 9   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-06-08 02:25:23 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:

Description denis ivanov 2008-01-09 03:36:36 UTC
Description of problem:

Before (fc8) it works without any problems. Now failed:

--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Modem initialized.
Segmentation fault


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

wvdial-1.60-3.fc9
libwvstreams-4.4.1-3.fc9
glibc-2.7.90-3


How reproducible:

Just run any dialup script with current version of glibc/libwvstreams/wvdial


Additional info:

Program received signal SIGSEGV, Segmentation fault.
0x0049682f in makecontext () from /lib/libc.so.6
(gdb) bt
#0  0x0049682f in makecontext () from /lib/libc.so.6
#1  0x003bce4c in WvTaskMan::do_task () from /usr/lib/libwvbase.so.4.4
#2  0x003bd08e in WvTaskMan::_stackmaster () from /usr/lib/libwvbase.so.4.4
#3  0x003bd155 in WvTaskMan::stackmaster () from /usr/lib/libwvbase.so.4.4
#4  0x003bcb6f in WvTaskMan::run () from /usr/lib/libwvbase.so.4.4
Backtrace stopped: previous frame inner to this frame (corrupt stack?)


Turn back to wvdial-1.60-3.fc8 with libwvstreams-4.4-1.fc8.i386.rpm have no
effect! glibc problem ???

How I can collect more info to find where bug is located ?

Comment 1 denis ivanov 2008-01-09 12:42:59 UTC
Installed debuginfo packages.

(gdb) bt
#0  0x0049682f in makecontext () from /lib/libc.so.6
#1  0x003bce4c in WvTaskMan::do_task () at utils/wvtask.cc:513
#2  0x003bd08e in WvTaskMan::_stackmaster () at utils/wvtask.cc:429
#3  0x003bd155 in WvTaskMan::stackmaster () at utils/wvtask.cc:386
#4  0x003bcb6f in WvTaskMan::run (task=@0x124db0, val=3836322) at
utils/wvtask.cc:270
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Don't knot why "Backstrace stopped"...


Comment 2 denis ivanov 2008-01-09 13:31:33 UTC
Some more backtraces (after manual configure/make install of same version of
libwvstreams). glibc problem ?

#0  0x004b882f in makecontext () from /lib/libc.so.6
#1  0x003e9d57 in WvTaskMan::do_task () at utils/wvtask.cc:513
#2  0x003e9f5e in WvTaskMan::_stackmaster () at utils/wvtask.cc:429
#3  0x003ea03e in WvTaskMan::stackmaster () at utils/wvtask.cc:386
#4  0x091423d8 in ?? ()
#5  0x091423d8 in ?? ()
#6  0x004b87ab in setcontext () from /lib/libc.so.6
#7  0x003e9ac5 in WvTaskMan::run (task=@0x91423d8, val=1) at utils/wvtask.cc:270
#8  0x003de989 in WvCont::_call (data=0x913f9d0) at utils/wvcont.cc:176
#9  0x003debba in WvCont::operator() (this=0x91403a4, p1=0x0) at
./include/wvcont.h:54
#10 0x003f3801 in WvStream::callback (this=0xbf845480) at ./include/wvcallback.h:433
#11 0x0804ccb1 in main (argc=3, argv=0xbf846344) at wvdial.cc:229
#12 0x004944a0 in __libc_start_main () from /lib/libc.so.6
#13 0x0804bd61 in _start ()


Comment 3 Ondrej Vasik 2008-01-09 13:49:52 UTC
Thanks for report, I'm not sure yet what is responsible. So - wvdial is crashes
with rawhide glibc, libwvstreams and wvdial ... and is not with F8 glibc,
libwvstreams and wvdial ... correct? There is only one difference between
wvdial/libwvstreams in rawhide and F8 - rebuild for new openssl ...  

Comment 4 denis ivanov 2008-01-09 14:07:26 UTC
Yeah seems right, but back to F8's wvdial/libwvstreams resulting the same problem.

Comment 5 Ondrej Vasik 2008-01-09 14:29:34 UTC
And openssl is from rawhide, correct? This could be the reason why F8 packages
are not working. And maybe glibc - anyway wvdial/libwvstreams needs more code
improvements in RAWHIDE because of coming gcc 4.3 which I have to do soon (build
failures with gcc4.3 because change of header handling) - so I will try to have
them asap to see if something will change. Could be glibc problem, but more
probably is the problem hidden in libwvstreams code and shown by latest glibc.

Comment 6 denis ivanov 2008-01-09 14:32:46 UTC
1) Yeah openssl from rawhide, but just now tried with F8 openssl (just removed
rawhide rpm and temporary installed F8' one) - the same problem

2) Found the way how to easy 100% reproduce problem on F8 system:

Logged into F8 system. Copies libc-2.7.90.so from rawhide to /lib/, make symlink
libc-2.7.90.so to libc.so.6 and run wvdial. The same Segfault as result!




Comment 7 denis ivanov 2008-01-09 14:44:30 UTC
How to solve it temporary:

1) copy /lib/libc-2.7.so from f8 to /lib/libc.so.X on rawhide
2) change one byte on wvdial binary (libc.so.6 -> libc.so.X)
3) now it works ;)

Seems the problem located in some of libwvstreams/glibc conflict.


Comment 8 Ondrej Vasik 2008-01-09 15:00:49 UTC
Great, I will try to fix gcc4.3 objections in libwvstreams and wvdial and then
you may try if the problem is solved - because I think it could be related to
some late gcc/glibc purification changes - and some parts of libwvstreams/wvdial
code are using code constructions now marked as obsolete. (sa_restorer was only
one obsolete thing fixed so far)

Comment 9 Ondrej Vasik 2008-02-19 12:59:57 UTC
I did required changes for gcc4.3 in libwvstreams, could you please check the
problem with following latest rawhide packages?
wvdial-1.60-4.fc9
libwvstreams-4.4.1-4.fc9
glibc-2.7.90-6

Please let me know if those packages work together without that workaround ... I
think they should, but one can't be sure without confirmation. TIA.

Comment 10 Bug Zapper 2008-05-14 04:21:26 UTC
Changing version to '9' as part of upcoming Fedora 9 GA.
More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 11 Brennan Ashton 2008-06-08 02:25:23 UTC
Since there are insufficient details provided in this report for us to
investigate the issue further, and we have not received feedback to the
information we have requested above, we will assume the problem was not
reproducible, or has been fixed in one of the updates we have released for the
reporter's distribution.

Users who have experienced this problem are encouraged to upgrade to the latest
update of their distribution, and if this issue turns out to still be
reproducible in the latest update, please reopen this bug with additional
information.

Closing as INSUFFICIENT_DATA.