Julian has responded to me. It seems that something we have done in building
our own toolchain has defeated the substitution of glibc strlen etc. with
Valdgrind's versions. I'm trying to find out why now. 

-----Original Message-----
From: Nicholas Nethercote [mailto:[EMAIL PROTECTED] 
Sent: 15 November 2008 00:21
To: Ian Anderson
Cc: [email protected]
Subject: Re: [Valgrind-users] Problems with strlen and similar in glibc2.6

On Fri, 14 Nov 2008, Ian Anderson wrote:

> There seems to be an issue with all the library functions in glibc 2.6
which
> search for particular characters including null terminators. Valgrind
> frequently reports that reads are being done from uninitialized locations.
> Technically this is correct, the library code reads a whole 32 bit word,
and
> does some clever bit arithmetic on it, including possibly up to 3 bytes
past
> the terminator, which may never have been initialized, but it seems to be
> guaranteed by the algorithm that it doesn't matter that these bytes are
> uninitialized.
>
> I saw that there used to be a --avoid-strlen-errors option in Valgrind,
but
> this doesn't seem to exist any more.
>
> Is there any other solution than adding these functions to the suppression
> list? I don't really want to do that, as I suspect that in amongst these
> false positive, any code does have some real errors. At the moment it's
not
> really feasible to check every one of these to see if it's valid or
> spurious.

--partial-loads-ok=yes may help.

But generally we try to replace hyper-optimised functions like this with 
simpler ones;  we do this for strlen, memcpy, strcpy, and various others 
(see memcheck/mc_replace_strmem.c for details).

What functions were causing problems?  It's possible that the Valgrind 
replacements aren't being used, eg. if the functions are being inlined.

N


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Valgrind-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to