Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Sep 2004 00:47:15 +0300 (EEST)
From:      Frerich Raabe <frerich@athame.co.uk>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/71832: Default Valgrind suppresion files for different FreeBSD releases
Message-ID:  <200409172147.i8HLlFHO098763@hex.athame.co.uk>
Resent-Message-ID: <200409172150.i8HLoFCi050970@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         71832
>Category:       ports
>Synopsis:       Default Valgrind suppresion files for different FreeBSD releases
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Sep 17 21:50:14 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Frerich Raabe
>Release:        FreeBSD 5.1-RELEASE-p17 i386
>Organization:
>Environment:
System: FreeBSD hex.athame.co.uk 5.1-RELEASE-p17 FreeBSD 5.1-RELEASE-p17 #10: Sat Jul 17 09:04:39 EEST 2004 root@hex.athame.co.uk:/usr/obj/usr/src/sys/HEX i386
>Description:
When building even a most simplistic C program on this box, valgrind spits
out a handful of warnings which are not terribly useful since they originate
from code in other system libraries. This is because some libraries shipped
with FreeBSD have problematic code sequences themselves.
>How-To-Repeat:
% echo "int main(){}" > mini.c
% cc -o mini mini.c
% valgrind --tool=memcheck ./mini

valgrind will now print a bunch of warnings, depending on what FreeBSD version
(and thus, what libraries) is used.
>Fix:
It would be most excellent if a few default supression files could be
shipped with the valgrind port, to make the software even more useful
out of the box. What I did was simply running a command sequence as the one
given in the "How-To-Repeat" section, but passing an additional
"--gen-suppressions=yes" switch to valgrind. That way, it will (after
asking for confirmation) generate a suitable supression rule for each error
it finds. Those rules can then be stored in a file (e.g. "freebsd-5.2.1.supp"),
and enabled by default by installing a "valgrindrc" file containing
"--suppressions=/path/to/supressions/freebsd-5.2.1.supp".

I'll try to generate suppresion files for different FreeBSD versions, and
attach them to this report as I get them.
>Release-Note:
>Audit-Trail:
>Unformatted:



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