On Wed, Sep 20, 2023 at 9:32 AM Bartosz Golaszewski <brgl@xxxxxxxx> wrote: > > From: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> > > gpio_sim_make_line_names() returns NULL or ERR_PTR() so we must not use > __free(kfree) on the returned address. Split this function into two, one > that determines the size of the "gpio-line-names" array to allocate and > one that actually sets the names at correct offsets. The allocation and > assignment of the managed pointer happens in between. > > Fixes: 3faf89f27aab ("gpio: sim: simplify code with cleanup helpers") > Reported-by: Alexey Dobriyan <adobriyan@xxxxxxxxx> > Closes: https://lore.kernel.org/all/07c32bf1-6c1a-49d9-b97d-f0ae4a2b42ab@p183/ > Suggested-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> > Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx> > --- > Hopefully this is the last version of this patch. I restored the max() > assignment from v3 but kept the code simpler than v2. Tested most corner > cases that occurred to me. > Patch queued for fixes. Bartosz