Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Jan Kratochvil <jan.kratochvil@redhat.com>
To: gdb-patches@sourceware.org
Subject: [patch] Crash with -lmcheck && --enable-targets=all(spu)
Date: Fri, 18 Sep 2009 16:16:00 -0000	[thread overview]
Message-ID: <20090918161550.GA30667@host0.dyn.jankratochvil.net> (raw)

Hi,

CFLAGS="-O0 -g" LDFLAGS="-lmcheck" ./configure --enable-targets=all; make; ./gdb/gdb -nx -ex r -ex bt --args ./gdb/gdb -nx -ex 'set confirm no' -ex start -ex symbol ./gdb/gdb

Program received signal SIGSEGV, Segmentation fault.
0x0000000000860ab6 in bfd_get_arch (abfd=0x9595959595959595) at ./archures.c:838
838       return abfd->arch_info->arch;
#0  0x0000000000860ab6 in bfd_get_arch (abfd=0x9595959595959595) at ./archures.c:838
#1  0x00000000005437d1 in spu_multiarch_solib_unloaded (so=0x20f2e30) at spu-multiarch.c:347
#2  0x0000000000479690 in observer_solib_unloaded_notification_stub (data=0x543796, args_data=0x7fffffffcf70) at observer.inc:227
#3  0x00000000004791a2 in generic_observer_notify (subject=0x1be0a10, args=0x7fffffffcf70) at observer.c:166
#4  0x0000000000479722 in observer_notify_solib_unloaded (solib=0x20f2e30) at observer.inc:252
#5  0x00000000007162cd in clear_solib () at solib.c:986
#6  0x00000000007163be in no_shared_libraries (ignored=0x0, from_tty=0) at solib.c:1081
#7  0x000000000062f899 in symbol_file_clear (from_tty=0) at symfile.c:1151
#8  0x000000000063037e in symbol_file_command (args=0x0, from_tty=0) at symfile.c:1478
#9  0x00000000005b50fd in do_cfunc (c=0x1be3100, args=0x0, from_tty=0) at ./cli/cli-decode.c:67
#10 0x00000000005b8056 in cmd_func (cmd=0x1be3100, args=0x0, from_tty=0) at ./cli/cli-decode.c:1738
#11 0x000000000047d5d8 in execute_command (p=0x7fffffffd7b1 "", from_tty=1) at top.c:453
#12 0x0000000000654e76 in catch_command_errors (command=0x47d343 <execute_command>, arg=0x7fffffffd7ab "symbol", from_tty=1, mask=6) at exceptions.c:525
#13 0x00000000004749e4 in captured_main (data=0x7fffffffd330) at ./main.c:861
#14 0x0000000000654dd3 in catch_errors (func=0x473a3b <captured_main>, func_args=0x7fffffffd330, errstring=0xceb307 "", mask=6) at exceptions.c:510
#15 0x0000000000474b3d in gdb_main (args=0x7fffffffd330) at ./main.c:911
#16 0x0000000000473716 in main (argc=9, argv=0x7fffffffd438) at gdb.c:33

No regressions on {x86_64,x86_64-m32}-fedora11-linux-gnu.

The fix should go also to the 7.0 branch.

I already found the comment as confusing ("mark it unallocated") + excessive.


Thanks,
Jan


2009-09-18  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* objfiles.c (free_objfile): Clear SYMFILE_OBJFILE if it is OBJFILE.
	* rs6000-nat.c (vmap_ldinfo): Only assertion check SYMFILE_OBJFILE now.
	* symfile.c (syms_from_objfile, symbol_file_clear): Likewise.

--- a/gdb/objfiles.c
+++ b/gdb/objfiles.c
@@ -459,8 +459,8 @@ free_objfile (struct objfile *objfile)
 
   unlink_objfile (objfile);
 
-  /* If we are going to free the runtime common objfile, mark it
-     as unallocated.  */
+  if (objfile == symfile_objfile)
+    symfile_objfile = NULL;
 
   if (objfile == rt_common_objfile)
     rt_common_objfile = NULL;
--- a/gdb/rs6000-nat.c
+++ b/gdb/rs6000-nat.c
@@ -915,7 +915,7 @@ If in fact that file has symbols which the mapped files listed by\n\
 symbols to the proper address)."),
 	       symfile_objfile->name);
       free_objfile (symfile_objfile);
-      symfile_objfile = NULL;
+      gdb_assert (symfile_objfile == NULL);
     }
   breakpoint_re_set ();
 }
--- a/gdb/symfile.c
+++ b/gdb/symfile.c
@@ -786,7 +786,7 @@ syms_from_objfile (struct objfile *objfile,
       if (symfile_objfile != NULL)
 	{
 	  free_objfile (symfile_objfile);
-	  symfile_objfile = NULL;
+	  gdb_assert (symfile_objfile == NULL);
 	}
 
       /* Currently we keep symbols from the add-symbol-file command.
@@ -1150,7 +1150,7 @@ symbol_file_clear (int from_tty)
      descriptors as well.  */
   no_shared_libraries (NULL, from_tty);
 
-  symfile_objfile = NULL;
+  gdb_assert (symfile_objfile == NULL);
   if (from_tty)
     printf_unfiltered (_("No symbol file now.\n"));
 }


             reply	other threads:[~2009-09-18 16:16 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-18 16:16 Jan Kratochvil [this message]
2009-09-18 17:27 ` Tom Tromey
2009-09-18 17:42   ` Jan Kratochvil

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090918161550.GA30667@host0.dyn.jankratochvil.net \
    --to=jan.kratochvil@redhat.com \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox