From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21098 invoked by alias); 14 Apr 2009 18:58:12 -0000 Received: (qmail 20994 invoked by uid 48); 14 Apr 2009 18:57:58 -0000 Date: Tue, 14 Apr 2009 18:58:00 -0000 From: "jason dot vas dot dias at gmail dot com" To: glibc-bugs@sources.redhat.com Message-ID: <20090414185756.10071.jason.vas.dias@gmail.com> Reply-To: sourceware-bugzilla@sourceware.org Subject: [Bug libc/10071] New: 2.9.90 (2009-04-14) libio/genops.c : __underflow() does not handle NULL FP X-Bugzilla-Reason: CC Mailing-List: contact glibc-bugs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: glibc-bugs-owner@sourceware.org X-SW-Source: 2009-04/txt/msg00082.txt.bz2 After building and installing the latest glibc from CVS, programs that link to 'libselinux.so' via GTK (ie. because libgtk-x11-2.0.so.0.1400.8 links to libselinux) get a SEGV in libio/genops.c:GI__underflow during the CRT startup BEFORE main() is entered. I recompiled ALL the libraries this app links to afresh from latest SCM source, but the problem remains: $ ldd ./my_gtk_app linux-vdso.so.1 => (0x00007fffec9fd000) libDayGUI.so.1 => /home/jason/DayGUI/libDayGUI.so.1 (0x00007f5fe4185000) libgtk-x11-2.0.so.0 => /usr/lib64/libgtk-x11-2.0.so.0 (0x00007f5fe3bad000) libgio-2.0.so.0 => /usr/lib64/libgio-2.0.so.0 (0x00007f5fe393a000) libgdk-x11-2.0.so.0 => /usr/lib64/libgdk-x11-2.0.so.0 (0x00007f5fe369e000) libgdk_pixbuf-2.0.so.0 => /usr/lib64/libgdk_pixbuf-2.0.so.0 (0x00007f5fe3484000) libpangocairo-1.0.so.0 => /usr/lib64/libpangocairo-1.0.so.0 (0x00007f5fe3278000) libcairo.so.2 => /usr/lib64/libcairo.so.2 (0x00007f5fe2ff4000) libpangoft2-1.0.so.0 => /usr/lib64/libpangoft2-1.0.so.0 (0x00007f5fe2dc8000) libatk-1.0.so.0 => /usr/lib64/libatk-1.0.so.0 (0x00007f5fe2ba9000) libpango-1.0.so.0 => /usr/lib64/libpango-1.0.so.0 (0x00007f5fe2961000) libm.so.6 => /lib64/libm.so.6 (0x00007f5fe26e2000) libgobject-2.0.so.0 => /usr/lib64/libgobject-2.0.so.0 (0x00007f5fe249f000) libgmodule-2.0.so.0 => /usr/lib64/libgmodule-2.0.so.0 (0x00007f5fe229c000) libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007f5fe1fbc000) libfreetype.so.6 => /usr/lib64/libfreetype.so.6 (0x00007f5fe1d36000) libfontconfig.so.1 => /usr/lib64/libfontconfig.so.1 (0x00007f5fe1b05000) libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f5fe18cd000) libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f5fe16b9000) librt.so.1 => /lib64/librt.so.1 (0x00007f5fe149f000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f5fe1284000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f5fe1081000) libc.so.6 => /lib64/libc.so.6 (0x00007f5fe0d29000) libXinerama.so.1 => /usr/lib64/libXinerama.so.1 (0x00007f5fe0b27000) libXrandr.so.2 => /usr/lib64/libXrandr.so.2 (0x00007f5fe091f000) libXcursor.so.1 => /usr/lib64/libXcursor.so.1 (0x00007f5fe0715000) libXcomposite.so.1 => /usr/lib64/libXcomposite.so.1 (0x00007f5fe0513000) libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007f5fe0301000) libXdamage.so.1 => /usr/lib64/libXdamage.so.1 (0x00007f5fe00ff000) libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007f5fdfefa000) libpixman-1.so.0 => /usr/lib64/libpixman-1.so.0 (0x00007f5fdfcb4000) libpng12.so.0 => /usr/lib64/libpng12.so.0 (0x00007f5fe4818000) libXrender.so.1 => /usr/lib64/libXrender.so.1 (0x00007f5fdfaab000) libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007f5fdf772000) libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007f5fdf557000) libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007f5fdf355000) libXdmcp.so.6 => /usr/lib64/libXdmcp.so.6 (0x00007f5fdf150000) libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f5fdef34000) libz.so.1 => /lib64/libz.so.1 (0x00007f5fded1f000) libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007f5fdeaf6000) /lib64/ld-linux-x86-64.so.2 (0x00007f5fe4756000) $ gdb ./my_gtk_app GNU gdb 6.8.0.20090412-cvs Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-pc-linux-gnu"... (gdb) start Breakpoint 1 at 0x44b181: file R_0.c, line 9021. Starting program: /home/jason/D/Dupdate_TEST/DG_TEST/Dupdate_DG_TEST [Thread debugging using libthread_db enabled] [New Thread 0x7f6b8a1cc790 (LWP 26058)] Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7f6b8a1cc790 (LWP 26058)] *__GI___underflow (fp=) at genops.c:361 361 return _IO_UNDERFLOW(fp); (gdb) where #0 *__GI___underflow (fp=) at genops.c:361 #1 0x0000000a00000001 in ?? () #2 0x00007fff9232bc20 in ?? () #3 0x00007fff9232bc28 in ?? () #4 0x0000000000000000 in ?? () (gdb) info reg pc pc: 0x7f6b86755898 (gdb) disass 0x7f6b86755890 0x7f6b86755900 Dump of assembler code from 0x7f6b86755890 to 0x7f6b86755900: 0x00007f6b86755890 <*__GI___underflow+80>: fadds (%rax) 0x00007f6b86755892 <*__GI___underflow+82>: add %al,(%rax) 0x00007f6b86755894 <*__GI___underflow+84>: mov %rbx,%rdi 0x00007f6b86755897 <*__GI___underflow+87>: pop %rbx 0x00007f6b86755898 <*__GI___underflow+88>: mov 0x20(%rax),%r11 0x00007f6b8675589c <*__GI___underflow+92>: jmpq *%r11 0x00007f6b8675589f <*__GI___underflow+95>: nop (gdb) info reg rax rax 0x0 0 (gdb) Somehow, GI__underflow is getting a NULL `_IO_FILE *fp' parameter. Any ideas anyone ? TIA, Jason -- Summary: 2.9.90 (2009-04-14) libio/genops.c : __underflow() does not handle NULL FP Product: glibc Version: unspecified Status: NEW Severity: normal Priority: P2 Component: libc AssignedTo: drepper at redhat dot com ReportedBy: jason dot vas dot dias at gmail dot com CC: glibc-bugs at sources dot redhat dot com GCC build triplet: lx86_64-pc-linux-gnu under linux-2.gcc-4.3.4(2009-04-10) glibc-2 GCC host triplet: x86_64-pc-linux-gnu GCC target triplet: x86_64-pc-linux-gnu http://sourceware.org/bugzilla/show_bug.cgi?id=10071 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.