INVARIANTS (was Re: RELENG_4 -> 5 -> 6: significant performance regression)

Matthew D. Fuller fullermd at
Sat May 13 09:03:39 PDT 2006

On Sat, May 13, 2006 at 11:58:26AM -0400 I heard the voice of
Kris Kennaway, and lo! it spake thus:
> FYI, INVARIANTS adds checks but does not (is not supposed to) divert
> code paths.

It does at least in UMA; it does a lot of bzero()/NULL'ing out of
memory, which might hide later uninitialized-use bugs that could bite
you without it (and, of course, probably burns a fair chunk of CPU to
do it ;).  I know I've heard other cases over the past 5 years or so;
that's the only one I've heard recently or can check, but I wouldn't
be too surprised if there were others.

Matthew Fuller     (MF4839)   |  fullermd at
Systems/Network Administrator |
           On the Internet, nobody can hear you scream.

More information about the freebsd-stable mailing list