Re: [PATCH] gpio: cdev: check for NULL labels when sanitizing them for irqs

From: Bartosz Golaszewski
Date: Wed Apr 03 2024 - 05:48:18 EST


On Wed, Apr 3, 2024 at 11:42 AM Kent Gibson <warthog618@xxxxxxxxx> wrote:
>
>
> It occurred to me that none of my tests cover this case, as they always
> request edges with the consumer set, so I added some and can confirm both
> the problem and the fix.
>
> In the process I found another bug - we overlooked setting up the irq
> label in debounce_setup() - the alternate path in edge_detector_setup()
> that performs sw debounce. That results in a double free of the
> req->label and memory corruption hilarity follows.
>
> I've got a patch for that - the unfortunate part being that
> debounce_setup() is earlier in the file than make_irq_label() and
> free_irq_label(). Those will need to be pushed earlier, so it is
> sure to conflict with this patch.
> How would you prefer to proceed?

Can you take my patch and just make it part of your series?

Bart