[PATCH] doc: drop recommendation against bool in structures
Morten Brørup
mb at smartsharesystems.com
Mon Jul 20 14:51:09 CEST 2026
> From: Bruce Richardson [mailto:bruce.richardson at intel.com]
> Sent: Monday, 20 July 2026 14.13
>
> On Mon, Jul 20, 2026 at 01:46:02PM +0200, Maxime Leroy wrote:
> > The coding style advised against bool in structures, citing space and
> > type-size concerns inherited from the Linux kernel. That does not
> match
> > DPDK practice: bool is already used in over 1400 structure fields
> across
> > the tree, including core APIs such as rte_flow. Drop the note so the
> > style guide reflects actual usage.
The note is still valid, although massively violated.
Could we paraphrase the note as an advice/recommendation, instead of completely removing it?
The intention is to make developers consider alternatives when adding a Boolean field to a structure.
Maybe it could be expanded with a few example alternatives:
uint8_t value, or
uintN_t value:1 (bitfield).
> >
> > Signed-off-by: Maxime Leroy <maxime at leroys.fr>
> > ---
>
> Definite +1
>
> Acked-by: Bruce Richardson <bruce.richardson at intel.com>
>
> > doc/guides/contributing/coding_style.rst | 9 ---------
> > 1 file changed, 9 deletions(-)
> >
> > diff --git a/doc/guides/contributing/coding_style.rst
> b/doc/guides/contributing/coding_style.rst
> > index 976a1e1de3..11de3bb39a 100644
> > --- a/doc/guides/contributing/coding_style.rst
> > +++ b/doc/guides/contributing/coding_style.rst
> > @@ -313,15 +313,6 @@ Structure Declarations
> > * Use of the structures should be by separate variable declarations
> and those declarations must be extern if they are declared in a header
> file.
> > * Externally visible structure definitions should have the structure
> name prefixed by ``rte_`` to avoid namespace collisions.
> >
> > -.. note::
> > -
> > - Avoid using ``bool`` in structures because it wastes space and
> > - the type size is unclear. A preferred use of
> > - ``bool`` is mainly as a return type from functions that return
> true/false,
> > - and maybe local variable functions.
> > -
> > - Ref: `LKML <https://lkml.org/lkml/2017/11/21/384>`_
> > -
> > Queues
> > ~~~~~~
> >
> > --
> > 2.43.0
> >
More information about the dev
mailing list