title: What is the point of invbool in C kernel programming?
body: <p>I'm beginning to do a bit more kernel programming, and in reading, found the existence of <code>invbool</code>. However, I can't seem to find anything on the Internet about it, except for the documented definition, copied nearly verbatim in a few places:</p>
  <blockquote>
  <p>The invbool type inverts the value, so that true values become false and vice versa.</p>
  </blockquote>
  <p>Thinking about this, I can't think of an instance where this would make code less confusing. Is there a good example of when you would use this? Why does it only seem to come up in kernel programming documentation?</p>