[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#365527: libc6: Segmentation fault in iofflush.c



reassign 365527 perl
thanks

Helge Kreutzmann wrote:
Package: libc6
Version: 2.3.2.ds1-22
Severity: normal

I am writing a small perl programm (see attached). If I run this
programm under Sarge/amd64, it segfaults. To reproduce:

helge@remaxp:~/prog/db/rechnung$ export LD_PRELOAD=/usr/lib/debug/libc-2.3.2.so
helge@remaxp:~/prog/db/rechnung$ env LANG=C ./rechnung.pl
n, Geschäft: HP
Geschäftsname:: (HP)
Währung:: (Euro)
Währung:: (Euro) Dollar
:
n, Produkttyp (Foodrechnung.pl[26712]: segfault at 0000000000000008 rip 00002aaaaac294a3 rsp 00007fffffffdac0 error 4
Speicherzugriffsfehler (core dumped)

i.e., press HP <enter> <enter> Dollar <enter>

If I run the very same program with current sid (but in an ia32 changeroot,
not amd64) the programm does not segfault. Looking at the corefile
with gdb, I see:

GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "x86_64-linux"...(no debugging symbols found)
Using host libthread_db library "/lib/libthread_db.so.1".


warning: core file may not match specified executable file.
Core was generated by `/usr/bin/perl ./rechnung.pl'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/debug/libc-2.3.2.so...done.
Loaded symbols for /usr/lib/debug/libc-2.3.2.so
Reading symbols from /usr/lib/libperl.so.5.8...done.
Loaded symbols for /usr/lib/libperl.so.5.8
Reading symbols from /lib/libdl.so.2...Reading symbols from /usr/lib/debug/lib/libdl-2.3.2.so...done.
done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libm.so.6...Reading symbols from /usr/lib/debug/lib/libm-2.3.2.so...done.
done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libpthread.so.0...Reading symbols from /usr/lib/debug/lib/libpthread-0.60.so...done.
done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libcrypt.so.1...Reading symbols from /usr/lib/debug/lib/libcrypt-2.3.2.so...done.
done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/ld-linux-x86-64.so.2...Reading symbols from /usr/lib/debug/lib/ld-2.3.2.so...done.
done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /usr/lib/perl5/auto/Term/ReadLine/Gnu/Gnu.so...done.
Loaded symbols for /usr/lib/perl5/auto/Term/ReadLine/Gnu/Gnu.so
Reading symbols from /lib/libreadline.so.4...done.
Loaded symbols for /lib/libreadline.so.4
Reading symbols from /lib/libncurses.so.5...done.
Loaded symbols for /lib/libncurses.so.5
#0  0x00002aaaaac294a3 in _IO_fflush (fp=0x719f40) at iofflush.c:42
42      iofflush.c: No such file or directory.
        in iofflush.c
(gdb) bt full
#0  0x00002aaaaac294a3 in _IO_fflush (fp=0x719f40) at iofflush.c:42
        result = 5388352
#1  0x00002aaaaaefbe1d in PerlIOStdio_flush () from /usr/lib/libperl.so.5.8
No symbol table info available.

It looks like fflush() is called with an invalid stream, as the error comes from the CHECK_FILE macro. I am therefore reassiging this bug to perl.

--
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian GNU/Linux developer | Electrical Engineer
 `. `'   aurel32@debian.org         | aurelien@aurel32.net
   `-    people.debian.org/~aurel32 | www.aurel32.net



Reply to: