[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#456531: libc6: strerror_r() not thread-safe



On Sun, Dec 16, 2007 at 04:21:10PM +0000, Rémi Denis-Courmont wrote:
> Le Sunday 16 December 2007 17:55:18 Pierre Habouzit, vous avez écrit :
> >   like said, I'd like to have:
> >   * your libc6 version ;
> 
> 2.7-4
> 
> >   * your libc6-i686 version ;
> 
> 2.7-4

  what is your kernel version ? I would be surprised it matters but …

> It also happens with libc6-i686 purged, in any case, so that's not that:
> 
> #0  0xb7e31e21 in strcmp () from /lib/libc.so.6
> #1  0xb7de5467 in _nl_find_msg () from /lib/libc.so.6
> #2  0xb7de6102 in __dcigettext () from /lib/libc.so.6
> #3  0xb7de4ea3 in dcgettext () from /lib/libc.so.6
> #4  0xb7e32339 in strerror_r () from /lib/libc.so.6
> #5  0xb7dffb44 in vfprintf () from /lib/libc.so.6
> #6  0xb7e22bc4 in vsnprintf () from /lib/libc.so.6
> #7  0xb7e07275 in snprintf () from /lib/libc.so.6
> #8  0x080485f0 in run ()
> #9  0xb7f12383 in start_thread () from /lib/libpthread.so.0
> #10 0xb7e9663e in clone () from /lib/libc.so.6
> 
> >   * a valgrind trace, gdb is quite useless here.
> 
> I have tried countless time to reproduce it under valgrind with no results.

  have you tried helgrind and other race-condition valgrind tools ?

> >   at least give a bt full or whatever trace that gives line numbers.
> > dcigettext is huge, I won't spot a bug just by reading it.
> 
> I have libc6-dbg and that won't do it, what else am I supposed to do?
> 

  `bt full` instead of just `bt` doesn't shows line numbers ?


  I'm sorry but I really _can't_ reproduce the problem, whereas I have
multi-core machines where race conditions are usually easier to show.

-- 
·O·  Pierre Habouzit
··O                                                madcoder@debian.org
OOO                                                http://www.madism.org

Attachment: pgp5uIoaWtZu6.pgp
Description: PGP signature


Reply to: