Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 13 Mar 2004 13:38:56 -0800
From:      Peter Wemm <peter@wemm.org>
To:        freebsd-amd64@freebsd.org
Cc:        Adriaan de Groot <adridg@cs.kun.nl>
Subject:   Re: The return of threading errors in ogg123
Message-ID:  <200403131338.57718.peter@wemm.org>
In-Reply-To: <200402242111.39048.adridg@cs.kun.nl>
References:  <Pine.GSO.4.44.0402171025520.15647-100000@wn4.sci.kun.nl> <200402181230.11078.adridg@cs.kun.nl> <200402242111.39048.adridg@cs.kun.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tuesday 24 February 2004 12:11 pm, Adriaan de Groot wrote:
> On Wednesday 18 February 2004 12:30, Adriaan de Groot wrote:
> > libc_r seems solid as a rock; libpthread can play ok for a while
> > but seems to bail as soon as there is some load on the system.
> > libpth doesn't work at all, missing a pthread_push_create symbol.
> > Any gdb trickery I can use on the core files to get more useful
> > information out of them over the short bt?
>
> ogg123 with libc_r played 1500 tracks without a hitch (all ripped
> from the CDs off my self, thanks); with libpthread (ie. kse) it takes
> a little prodding, but then it dumps core:
>
> Playing: TomCochrane/02-LoveUnderFire.ogg
> Ogg Vorbis stream: 2 channel, 44100 Hz
> Title: Love Under Fire
> Artist: Tom Cochrane
> Bus error (core dumped)5] of 04:48.17  (119.7 kbps)  Output Buffer 
> 96.9%
>
> (still with the same FreeBSD beans.ebn.kun.nl 5.2-CURRENT FreeBSD
> 5.2-CURRENT #0: Mon Feb 16 08:12:04 CET 2004
> root@beans.ebn.kun.nl:/usr/obj/mnt/sys/CURRENT/src/sys/GENERIC  amd64
> )
>
>
> It crashes here:
>
> #0  0x0000000200f19320 in pthread_testcancel () from
> /usr/lib/libpthread.so.1
>
> with this disassembly:
>
> 0x0000000200f19307 <pthread_testcancel+2735>:   nop
> 0x0000000200f19308 <pthread_testcancel+2736>:   mov   
> 1085185(%rip),%rcx # 0x201022210
> 0x0000000200f1930f <pthread_testcancel+2743>:   jmpq   *%ecx
> 0x0000000200f19311 <pthread_testcancel+2745>:   nop
> 0x0000000200f19312 <pthread_testcancel+2746>:   nop
> 0x0000000200f19313 <pthread_testcancel+2747>:   nop
> 0x0000000200f19314 <pthread_testcancel+2748>:   mov    $0x17e,%rax
> 0x0000000200f1931b <pthread_testcancel+2755>:   mov    %rcx,%r10
> 0x0000000200f1931e <pthread_testcancel+2758>:   syscall
> 0x0000000200f19320 <pthread_testcancel+2760>:   jb     0x200f19308
> <pthread_testcancel+2736>
> 0x0000000200f19322 <pthread_testcancel+2762>:   retq
> 0x0000000200f19323 <pthread_testcancel+2763>:   nop
> 0x0000000200f19324 <pthread_testcancel+2764>:   mov   
> 1085157(%rip),%rcx
>
>
> Not a place that looks like erroring. However:
>
> (gdb) print $rsp
> $1 = (void *) 0x51eeb8
> (gdb) print $rbp
> $2 = (void *) 0x51ef80
>
> looks like the stack-16-alignment has gotten broken again somewhere.

Are you still having problems with this?  I've been trying to reproduce 
it for a while, but I'm having no success.  I figure the best way to 
make sure I can see it in action is to make a post saying I can't 
reproduce it. :-)

I'm using SCHED_ULE fwiw.

-- 
Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200403131338.57718.peter>