2024-01-17 20:20:26

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH v2] parse: handle __cleanup__ attribute

Hi,

On Mon, Dec 18, 2023 at 02:51:32PM +0100, Luc Van Oostenryck wrote:
> On Thu, Dec 14, 2023 at 04:20:20PM +0300, Dan Carpenter wrote:
> > Yep. Perfect. Thanks so much!
>
> Pushed now.

Any chance someone is looking at making context tracking working for
code annotated as __cleanup? We already have a bunch of code using
constructs like:

...
guard(spinlock_irqsave)(&gpio_lock);

if (!test_bit(FLAG_REQUESTED, &desc->flags))
return NULL;
...

which resuls in:

$ make C=1 W=1 drivers/gpio/gpiolib.o
CALL scripts/checksyscalls.sh
DESCEND objtool
INSTALL libsubcmd_headers
CC drivers/gpio/gpiolib.o
CHECK drivers/gpio/gpiolib.c
drivers/gpio/gpiolib.c:2359:6: warning: context imbalance in 'gpiochip_dup_line_label' - different lock contexts for basic block

and I expect we'll see more and more of this.

Thanks.

--
Dmitry


2024-02-29 14:03:20

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH v2] parse: handle __cleanup__ attribute

On Wed, Jan 17, 2024 at 12:20:13PM -0800, Dmitry Torokhov wrote:
> On Mon, Dec 18, 2023 at 02:51:32PM +0100, Luc Van Oostenryck wrote:
> > On Thu, Dec 14, 2023 at 04:20:20PM +0300, Dan Carpenter wrote:
> > > Yep. Perfect. Thanks so much!
> >
> > Pushed now.
>
> Any chance someone is looking at making context tracking working for
> code annotated as __cleanup? We already have a bunch of code using
> constructs like:
>
> ...
> guard(spinlock_irqsave)(&gpio_lock);
>
> if (!test_bit(FLAG_REQUESTED, &desc->flags))
> return NULL;
> ...
>
> which resuls in:
>
> $ make C=1 W=1 drivers/gpio/gpiolib.o
> CALL scripts/checksyscalls.sh
> DESCEND objtool
> INSTALL libsubcmd_headers
> CC drivers/gpio/gpiolib.o
> CHECK drivers/gpio/gpiolib.c
> drivers/gpio/gpiolib.c:2359:6: warning: context imbalance in 'gpiochip_dup_line_label' - different lock contexts for basic block
>
> and I expect we'll see more and more of this.

+1 here. It's quite annoying for every Linux kernel developer in the world
(which are at least 2k of active ones).

--
With Best Regards,
Andy Shevchenko