[RFT PATCH v2] spi: bcm2835: reduce the abuse of the GPIO API

Linus Walleij linus.walleij at linaro.org
Sat Sep 2 09:56:51 PDT 2023


On Fri, Sep 1, 2023 at 2:31 PM Mark Brown <broonie at kernel.org> wrote:

> > > +       struct gpiod_lookup_table *lookup __free(kfree) = NULL;
>
> > Whoa!
> > This is really neat.
> > As noted, it will confuse static checkers at no end, but they just have
> > to adopt. (CC to Dan C if he now runs into this.)
>
> It also doesn't look amazing for humans, it's very not C like...

<linux/cleanup.h> and the __free() macro was introduced by Peter
Z who also very famously suggested (OTOMH!) that instead of
adopting Rust to the kernel it would be possible to bring the
desired Rust features into C.

Which is what he does, well the feature has been there for a while
but he identified it and made it easily accessible.

Now if this path is desirable ... yeah. Maybe a matter of taste.

Yours,
Linus Walleij



More information about the linux-arm-kernel mailing list