xfs
[Top] [All Lists]

Re: xfsprogs: to -DDEBUG or not to -DDEBUG?

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: xfsprogs: to -DDEBUG or not to -DDEBUG?
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Fri, 05 Feb 2010 15:14:56 -0600
Cc: xfs mailing list <xfs@xxxxxxxxxxx>
In-reply-to: <20100205023134.GA11483@xxxxxxxxxxxxxxxx>
References: <4B6AFB83.1070309@xxxxxxxxxxx> <20100205023134.GA11483@xxxxxxxxxxxxxxxx>
User-agent: Thunderbird 2.0.0.23 (Macintosh/20090812)
Dave Chinner wrote:
> On Thu, Feb 04, 2010 at 10:53:23AM -0600, Eric Sandeen wrote:
>> Fedora, long ago, disabled debug in the xfsprogs specfile:
>>
>> http://cvs.fedoraproject.org/viewvc/F-12/xfsprogs/xfsprogs.spec?r1=1.5&r2=1.6
>>
>> * Wed Apr 20 2005 Dave Jones <davej@xxxxxxxxxx>
>> - Disable debug. (#151438)
>>
>> per this bug:  https://bugzilla.redhat.com/show_bug.cgi?id=151438
>>
>> referencing this email thread:
>>
>> http://oss.sgi.com/archives/linux-xfs/2005-03/msg00038.html
>> which no longer exists (grrrr) but is probably now here:
>>
>> http://oss.sgi.com/archives/xfs/2005-03/msg00416.html
>>
>> Fedora still builds with -DNDEBUG, but the upstream tarball has
>> it on by default.  I have seen several occasions where other
>> distros had failing xfs_repairs which were "fixed" by disabling
>> debug.  I'd like to make a decision on whether DEBUG should be
>> on or off by default for upstream releases.  Any thoughts?
> 
> Personally I'd prefer the repair process to stop if it comes across
> inconsistencies it can't handle. Ignoring them is as likely to "fix"
> the crash as it is to corrupt the filesystem more.
> 
> On top of that we get bug reports when those problems are hit so
> we can look into what caused the problem. We don't really have a
> repair test suite that covers all the possible corruptions that
> can occur, so we are kind of reliant on users reporting conditions
> we've never had to handle before so we can fix them...
> 
> Cheers,
> 
> Dave.

Hrm.  Well, that makes sense.

OTOH, Debian turns it off too:

$ grep DEBUG debian/rules 
options = export DEBUG=-DNDEBUG DISTRIBUTION=debian \

and for some reason when I take this out of the Fedora specfile,
it fails to build because:

xfs_bmap.c:23: warning: 'xfs_bmap_check_leaf_extents' used but never defined

and indeed there is a forward declaration:

#ifdef DEBUG
STATIC void
xfs_bmap_check_leaf_extents(xfs_btree_cur_t *cur, xfs_inode_t *ip, int 
whichfork);
#endif

but no definition that I can find ....

Something must be odd w/ the way this flag works though because a simple "make"
in the git tree, w/o any -DNDEBUG, works fine for me ...

Meanwhile I'm leaving DEBUG=-DNDEBUG on in Fedora just for now :)

-Eric

<Prev in Thread] Current Thread [Next in Thread>