This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: gas --statistics segfault
On Sun, Feb 05, 2006 at 08:09:35AM -0800, H. J. Lu wrote:
> On Sun, Feb 05, 2006 at 09:02:19PM +0800, Dasn Clainst wrote:
> >
> > Hi, guys.
> >
> > In my box, 'as --statistics' sometimes segfault.
> > -------------------------------------------------------------
> > $ uname -msr
> > OpenBSD 3.8 i386
> > $ echo "main(){}" > p.c
> > $ cat -n test.sh
> > 1 #!/bin/sh
> > 2 count=100;failed=0;i=0
> > 3 cc -S p.c -o p.s
> > 4 while [ $i -lt $count ]
> > 5 do
> > 6 ./as-new --statistics p.s > /dev/null 2>&1
> > 7 if [ $? -ne 0 ]; then
> > 8 let failed=failed+1
> > 9 fi
> > 10 let i=i+1
> > 11 done
> > 12 echo "$failed/$count failed."
> > 13 rm -rf as-new.core a.out
> > $ sh test.sh
> > 100/100 failed.
>
> You were making it harder for people to reproduce it. Please open a bug
> report at
>
> http://www.sourceware.org/bugzilla/
>
> with a testcase.
>
>
> H.J.
Usually, --statistics will cause segfault, so no need testcase. The
test.sh is used to find how often segfaults will produce (usually 100%,
sometimes 50%). IMHO, the 'bfd_close' free all frch_seg in frchain_root
before 'subsegs_print_statistics' access them.