svn commit: r263424 - head/sys/arm/conf

Warner Losh imp at bsdimp.com
Sat Mar 22 18:16:34 UTC 2014


On Mar 22, 2014, at 12:01 PM, John-Mark Gurney <jmg at funkthat.com> wrote:

> Ian Lepore wrote this message on Sat, Mar 22, 2014 at 07:25 -0600:
>> On Fri, 2014-03-21 at 12:04 -0700, John-Mark Gurney wrote:
>>> Ian Lepore wrote this message on Fri, Mar 21, 2014 at 08:27 -0600:
>>>> On Fri, 2014-03-21 at 09:43 +0000, Andrew Turner wrote:
>>>>> On Thu, 20 Mar 2014 17:01:21 +0000 (UTC)
>>>>> Ruslan Bukin <br at FreeBSD.org> wrote:
>>>>> 
>>>>>> Author: br
>>>>>> Date: Thu Mar 20 17:01:21 2014
>>>>>> New Revision: 263424
>>>>>> URL: http://svnweb.freebsd.org/changeset/base/263424
>>>>>> 
>>>>>> Log:
>>>>>>  Disable debugging by default.
>>>>> 
>>>>> I don't like this on head. I have found a number of issues that were
>>>>> hidden because the kernel config most people were using for development
>>>>> had WITNESS, INVARIANTS and DIAGNOSTIC disabled.
>>> 
>>> I agree...  HEAD needs these to make sure they are production ready...
>>> 
>>>> I disagree.  Witness is essentially useless anymore, because there are
>>>> so many known LORs that nobody cares about when you report them that all
>>>> it does is spews noise.  Maybe it's useful when you're looking for a
>>>> particular problem, but leaving it on all the time has just lost its
>>>> value.
>>> 
>>> I wouldn't be tracking down an AVILA bug if it wasn't for INVARIANTS..
>>> 
>>> Also, your complaint is solely about WITNESS not the other ones...
>>> 
>>> Considering how many people are writing new drivers for ARM, and might
>>> be introducing locking issues w/ those new drivers, WITNESS should be
>>> included, plus, if you disable INVARIANTS, it means that all the
>>> lock assert functions will be turned off, and we might miss an odd
>>> calling stack which doesn't hold a lock or something...
>>> 
>>> If you're using HEAD for performance, it's easy to turn these off..
>>> 
>> 
>> My complaint is only about witness.
> 
> echo debug.witness.watch=0 >> /etc/sysctl.conf
> 
> :)  Not as fast as completely turning it off, but almost there..
> 
>> But... about being easy to turn off... how do they get turned off on
>> non-head branches?  Does re@ really have to go grovel through 77 config
>> files turning off diagnostic options?  Do we have to handle that
>> difference when merging things to stable branches?
> 
> Apparently they do:
> https://svnweb.freebsd.org/base?view=revision&revision=256283
> 
> Though, handling merging is an issue for all arches...  possibly more
> anoying for ARM since it's so actively developed...
> 
>> Last time I tried to put something into arm/conf/DEFAULTS I got my hand
>> slapped, but... putting the diagnostic options in there on head and not
>> on stable branches would make the "touch 77 config files" problem go
>> away.
> 
> Yes, I agree this is a problem and needs a solution, and I do agree
> DEFAULTS would be a resonable place, but since there are others that
> feel more strongly about what goes in DEFAULTS, they should speak about
> it..

DEFAULTS is only for mandatory options. WITNESS isn’t a mandatory option
so it doesn’t belong there. That was the agreement when we created DEFAULTS
and if we want to have another file that’s always included, we should go the
std.all route. Or better yet, switch to a system that’s not so creaky and cranky
that we can more easily expand...

Warner


More information about the svn-src-head mailing list