svn commit: r247710 - projects/calloutng/sys/kern
Bruce Evans
brde at optusnet.com.au
Tue Mar 5 11:41:53 UTC 2013
On Tue, 5 Mar 2013, Gleb Smirnoff wrote:
> On Tue, Mar 05, 2013 at 08:43:33PM +1100, Bruce Evans wrote:
> B> > I think for new code we should prefer C99's bool to boolean_t.
> B>
> B> Why? There is no existing practice for this in the kernel. There is some
> B> in the Linux kernel :-).
>
> Why? Because it is standard. What for? To make it more easy for newcomers
> to start hacking on FreeBSD kernel.
I think you mean "harder". Now the newcomers need to know:
- the old method, which is used in most places
- the new method
- style rules for old, new and mixed methods
- arcane C99 points like whether bool can be used in bit-fields (I had to
look this up to check it. It can).
I now see technical reasons to never use bool in kernel or other low-level
code. It will cause minor pessimizations converting nonzero to true (1)
at runtime, and for converting bool to register_t when passing parameters
(bool is 1 byte on x86). To use bool in structs (when not packing it into
bit-fields), we need to know too much about its size to pack it properly...
Bruce
More information about the svn-src-projects
mailing list