svn commit: r338214 - in head/sys: conf kern sys

Andriy Gapon avg at FreeBSD.org
Thu Aug 23 07:10:05 UTC 2018


On 23/08/2018 01:19, Conrad Meyer wrote:
> Author: cem
> Date: Wed Aug 22 22:19:42 2018
> New Revision: 338214
> URL: https://svnweb.freebsd.org/changeset/base/338214
> 
> Log:
>   KASSERT: Make runtime optionality optional

Thank you!

>   Add an option, KASSERT_PANIC_OPTIONAL, that allows runtime KASSERT()
>   behavior changes.  When this option is not enabled, code that allows
>   KASSERTs to become optional is not enabled, and all violated assertions
>   cause termination.
>   
>   The runtime KASSERT behavior was added in r243980.
>   
>   One important distinction here is that panic has __dead2
>   ("attribute((noreturn))"), while kassert_panic does not.  Static analyzers
>   like Coverity understand __dead2.  Without it, KASSERTs go misunderstood,
>   resulting in many false positives that result from violation of program
>   invariants.
>   
>   Reviewed by:	jhb, jtl, np, vangyzen
>   Relnotes:	yes
>   Sponsored by:	Dell EMC Isilon
>   Differential Revision:	https://reviews.freebsd.org/D16835


-- 
Andriy Gapon


More information about the svn-src-head mailing list