On 2004-09-17 02:46, Matthew Dillon <[EMAIL PROTECTED]> wrote:
> :A KASSERT() wrapped in #ifdef INVARIANTS has zero overhead for normal,
> :non-debugging kernels.  The developers who are responsible for writing and
> :testing new system calls should use INVARIANTS anyway, so they'll quickly
> :catch the mistake.
>
>     I strongly recommend that all kernels always be compiled with INVARIANTS
>     turned on.  Even production kernels.  I believe GENERIC defaults to
>     INVARIANTS turned on.

In -CURRENT it's enabled for all platforms:

: $ grep 'INVARIANTS[[:space:]]' */conf/GENERIC
: alpha/conf/GENERIC:options      INVARIANTS              #Enable calls of extra 
sanity checking
: amd64/conf/GENERIC:options      INVARIANTS              # Enable calls of extra 
sanity checking
: i386/conf/GENERIC:options       INVARIANTS              # Enable calls of extra 
sanity checking
: pc98/conf/GENERIC:options       INVARIANTS              # Enable calls of extra 
sanity checking
: powerpc/conf/GENERIC:options    INVARIANTS              #Enable calls of extra 
sanity checking
: sparc64/conf/GENERIC:options    INVARIANTS              # Enable calls of extra 
sanity checking

> I'm not sure what is done during release cycles but presumably
> INVARIANTS is left on for the release build as well (if it isn't it
> should be).

I'm not sure either.  I've been running HEAD for a long time; for an
informed answer I'd have to ask the RE people.

- Giorgos

_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to