https://bugzilla.novell.com/show_bug.cgi?id=352163 User seppo@totalviewtech.com added comment https://bugzilla.novell.com/show_bug.cgi?id=352163#c10374812144 Summary: Debugging fatally broken: Kernel bug prevents launch of an application under the control of a debugger Product: SUSE Linux 10.1 Version: Final Platform: IA64 OS/Version: SuSE Linux 10.1 Status: NEW Severity: Critical Priority: P5 - None Component: Kernel AssignedTo: kernel-maintainers@forge.provo.novell.com ReportedBy: seppo@totalviewtech.com QAContact: qa@suse.de Found By: Customer I would like to report a very high prioriry bug we have discovered on Itanium platforms in the latest SUSE 10.1, kernel version 2.6.16.54-0.2.3. The problem is that a kernel bug prevents any debugging; Totalview Debugger, gdb, or idb debuggers will fail to launch the application under the debugger's control. Our understanding is that the problem could be with the ptrace function, where "PTRACE_TRACEME call fails to set the flag indicating the process is traced, and as a result, the SIGTRAP on exec is a fatal signal." Our view is that this is a critical bug, preventing all users from debugging on the SUSE 10.1 Itanium2 platforms. The bug seems to be present only on Itanium platforms (i.e. not on x86 or x86-64), and on the latest kernel level 2.6.16.54-0.2.3. The earlier kernels, e.g. 2.6.16.46-0.12 are known to work properly. This bug has been also reported as Novell Service Request #10374812144, but given the high relevance of the bug, we hope this bugzilla report will escalate the problem quicker and more properly. More details below. Thanks, Seppo Seppo Sahrakorpi Partner Technologies Engineer TotalView Technologies, 24 Prime Parkway, Natick, MA 01760 http://www.totalviewtech.com seppo@totalviewtech.com -- 508-652-7781 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX basashi:/home/seppo/Bugs/Bug_10762 > cat /etc/*release LSB_VERSION="core-2.0-noarch:core-3.0-noarch:core-2.0-ia64:core-3.0-ia64" SUSE Linux Enterprise Server 10 (ia64) VERSION = 10 PATCHLEVEL = 1 basashi:/home/seppo/Bugs/Bug_10762 > uname -a Linux basashi 2.6.16.54-0.2.3-default #1 SMP Thu Nov 22 18:32:07 UTC 2007 ia64 ia64 ia64 GNU/Linux basashi:/home/seppo/Bugs/Bug_10762 > g++ -v Using built-in specs. Target: ia64-suse-linux Configured with: ../configure --enable-threads=posix --prefix=/usr --with-local-prefix=/usr/local --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib --libexecdir=/usr/lib --enable-languages=c,c++,objc,fortran,obj-c++,java,ada --enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.1.2 --enable-ssp --disable-libssp --disable-libgcj --with-slibdir=/lib --with-system-zlib --enable-shared --enable-__cxa_atexit --enable-libstdcxx-allocator=new --program-suffix= --enable-version-specific-runtime-libs --with-system-libunwind --host=ia64-suse-linux Thread model: posix gcc version 4.1.2 20070115 (prerelease) (SUSE Linux) basashi:/home/seppo/Bugs/Bug_10762 > g++ tx_local* basashi:/home/seppo/Bugs/Bug_10762 > ./a.out c_ = 1946 foofoo = 3872 basashi:/home/seppo/Bugs/Bug_10762 > gdb ./a.out GNU gdb 6.6 Copyright (C) 2006 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 "ia64-suse-linux"... Using host libthread_db library "/lib/libthread_db.so.1". (gdb) run Starting program: /nfs/netapp0/user/home/seppo/Bugs/Bug_10762/a.out Program terminated with signal SIGTRAP, Trace/breakpoint trap. The program no longer exists. You can't do that without a process to debug. (gdb) quit basashi:/home/seppo/Bugs/Bug_10762 > That is, the program does not even execute under gdb, rather than immediately exits fatally. Also, the problem is independent of the application being debugged. Below debugging of 'cp' command fails similarly: basashi:/home/seppo/Bugs/Bug_10762 > gdb /bin/cp GNU gdb 6.6 Copyright (C) 2006 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 "ia64-suse-linux"... (no debugging symbols found) Using host libthread_db library "/lib/libthread_db.so.1". (gdb) run Starting program: /bin/cp Program terminated with signal SIGTRAP, Trace/breakpoint trap. The program no longer exists. You can't do that without a process to debug. (gdb) quit basashi:/home/seppo/Bugs/Bug_10762 > XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Just for the sake of consistency, this is the program I used above, although this bug is not dependent on the application itself. /* Test that local variables defined inside C++ constructor are visible for TV. By SSS 08/09/2007 */ /* CMD: dbreak 35; dgo; dprint iii; exit -force */ #include <stdio.h> class A { public: A (int a, int b); int a_; int b_; int c_; }; A::A (int a, int b) : a_ (a), b_ (b), c_ (0) { int iii; iii = 42; c_ = a_ * b_; c_ += iii; static const int foofoo[6][4] = { {0,1,2,3}, {1,2,3,4}, {2,3,4,5}, {3,4,5,6}, {4,5,6,7}, {5,6,7,8} }; printf("c_ = %d\n", c_); printf("foofoo = %d\n", foofoo); } int main (int, char* *) { int a = 34, b = 56; A x (a, b); return x.a_ + x.b_; } XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.