Software Archive
Read-only legacy content
17061 Discussions

When is gdb 7.9 for MIC going to be released?

Mark_L_1
Beginner
543 Views

gdb 7.6, 7.7 and 7.8 have a ELF bug that causes them to crash in some situations.

Please see this discussion for more information: http://stackoverflow.com/questions/27355304/gdb-crashes-at-start-internal-error-follow-die-offset

We have solved this problem by building our own version of gdb from the 7.9 source code. However, I don't think this is possible for the MIC, as the gdb for MIC has lots of modifications from the gdb mainline.

When will gdb based on 7.9 be released by Intel?

The error message that gdb spits out is

../../gdb/dwarf2read.c:16760: internal-error: follow_die_offset:
Assertion 'dwarf2_per_objfile->reading_partial_symbols' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.

 

 

 

0 Kudos
6 Replies
Georg_Z_Intel
Employee
543 Views

Hello!

Our current 2016 product suites ship GNU* GDB 7.8. The next major version (next year) likely come with GNU* GDB 7.10 already. We don't plan to provide a 7.9 version.

However, I've asked our debugger engineers to pull in the patch for the problem you described to our 7.8 versions. So you can get the fix with a future update of the 2016 suites. As soon as they are available I'll update the thread at hand.

Thank you for reporting!

Best regards,

Georg Zitzlsberger

0 Kudos
Georg_Z_Intel
Employee
543 Views

Hello!

The GNU* GDB debuggers (gdb-ia/gdb-mic) we ship with Intel(R) Parallel Studio XE 2015 Update 2 and later (also includes the latest 2016 version) has this fixed already. Even though those GDB versions are prior 7.9, our engineers have applied that fix already.

However, the native debugger to be run directly on Intel(R) Xeon Phi(TM) coprocessor (called "gdb" there) is 7.6 and does not have the fix - this is true even for the latest Intel® Manycore Platform Software Stack (Intel® MPSS) 3.5.2. Did you use that one, or gdb-ia/gdb-mic?

Best regards,

Georg Zitzlsberger

0 Kudos
Mark_L_1
Beginner
543 Views

I'm interested in the native gdb only. We are running native code, so I assume this is the only way of debugging it.

0 Kudos
Georg_Z_Intel
Employee
543 Views

Hello!

There is still another way:

You can not only use the native debugger on the coprocessor itself but also use the remote debugger (gdb-mic). The latter just requires you to run the gdbserver on the coprocessor and you can remotely debug the natively executed applications there (with gdb-mic on the development host).

Information how to do that is here:
https://software.intel.com/en-us/articles/debugging-intel-xeon-phi-applications-on-linux-host#Debugging%20Remotely

Please take the gdb-mic and the corresponding gdbserver from the latest Intel(R) Parallel Studio XE 2016 installation. This version will work well in your case.

Best regards,

Georg Zitzlsberger

0 Kudos
Georg_Z_Intel
Employee
543 Views

Hello!

This is a quick information update that we might update the native debugger in the next major version of the MPSS package. It would then be aligned with gdb-ia & gdb-mic of the 2016 product suite (including the ELF fix).
However, I just requested this and even though engineering agreed we cannot guarantee it - the next major update is some time out beginning 2016.

Best regards,

Georg Zitzlsberger

0 Kudos
Curtis_G_
Beginner
543 Views

I work with Mark L. and just encountered this error.

I'm building a native application with ...

$ icpc --version
icpc (ICC) 17.0.4 20170411
Copyright (C) 1985-2017 Intel Corporation.  All rights reserved.

And trying to debug with ...

$ ssh -t mic0 gdb

Warning: Permanently added 'mic0' (ECDSA) to the list of known hosts.
GNU gdb (GDB) 7.6.50+mpss3.5
Copyright (C) 2013 Free Software Foundation, Inc; (C) 2013-2014 Intel Corp.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
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 "k1om-mpss-linux".
Type "show configuration" for configuration details.
For information about how to find Technical Support, Product Updates,              
User Forums, FAQs, tips and tricks, and other support information, please visit:
<http://www.intel.com/software/products/support/>.For help, type "help".
Type "apropos word" to search for commands related to "word".

(gdb) file <application>

Reading symbols from <application>.../sandbox/build/tmp/tmp/work/k1om-mpss-linux/gdb-7.6.50+mpss3.5-1/gdb-7.6.50+mpss3.5/gdb/dwarf2read.c:19211: internal-error: follow_die_offset: Assertion `dwarf2_per_objfile->reading_partial_symbols' failed.
A problem internal to GDB has been detected,
further debugging may prove unreliable.
Quit this debugging session? (y or n) 

 

 

 

0 Kudos
Reply