[PATCH v2 0/7] nvmem/gpio: fix resource management

From: Bartosz Golaszewski
Date: Tue Feb 18 2020 - 04:43:01 EST

From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>

This series addresses a couple problems with memory management in nvmem

First we fix two earlier memory leaks - this is obvious stable material.
Next we extend the GPIO framework to use reference counting for GPIO
descriptors. We then use it to fix the resource management problem with
the write-protect pin.

Finally we add some readability tweaks.

While the memory leak with wp-gpios is now in mainline - I'm not sure how
to go about applying the kref patch. This is theoretically a new feature
but it's also the cleanest way of fixing the problem.

v1 -> v2:
- make gpiod_ref() helper return
- reorganize the series for easier merging
- fix another memory leak

Bartosz Golaszewski (6):
nvmem: fix memory leak in error path
nvmem: fix another memory leak in error path
gpiolib: use kref in gpio_desc
nvmem: increase the reference count of a gpio passed over config
nvmem: remove a stray newline in nvmem_register()
nvmem: add a newline for readability

Khouloud Touil (1):
nvmem: release the write-protect pin

drivers/gpio/gpiolib.c | 30 +++++++++++++++++++++++++++---
drivers/gpio/gpiolib.h | 1 +
drivers/nvmem/core.c | 18 +++++++++++-------
include/linux/gpio/consumer.h | 1 +
4 files changed, 40 insertions(+), 10 deletions(-)