diff options
author | Nuno Sá <nuno.sa@analog.com> | 2020-09-25 12:10:45 +0300 |
---|---|---|
committer | Jonathan Cameron <Jonathan.Cameron@huawei.com> | 2020-09-29 19:34:25 +0300 |
commit | b8a533f3c24b3b8f1fdbefc5ada6a7d5733d63e6 (patch) | |
tree | acd2740e3a6e712e2a083b91d8f7d2c2971f2656 /drivers/iio/adc | |
parent | b07c47bfab6f5c4c7182d23e854bbceaf7829c85 (diff) | |
download | linux-b8a533f3c24b3b8f1fdbefc5ada6a7d5733d63e6.tar.xz |
iio: ad7292: Fix of_node refcounting
When returning or breaking early from a
`for_each_available_child_of_node()` loop, we need to explicitly call
`of_node_put()` on the child node to possibly release the node.
Fixes: 506d2e317a0a0 ("iio: adc: Add driver support for AD7292")
Signed-off-by: Nuno Sá <nuno.sa@analog.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20200925091045.302-2-nuno.sa@analog.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Diffstat (limited to 'drivers/iio/adc')
-rw-r--r-- | drivers/iio/adc/ad7292.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/iio/adc/ad7292.c b/drivers/iio/adc/ad7292.c index 2eafbe7ac7c7..ab204e9199e9 100644 --- a/drivers/iio/adc/ad7292.c +++ b/drivers/iio/adc/ad7292.c @@ -310,8 +310,10 @@ static int ad7292_probe(struct spi_device *spi) for_each_available_child_of_node(spi->dev.of_node, child) { diff_channels = of_property_read_bool(child, "diff-channels"); - if (diff_channels) + if (diff_channels) { + of_node_put(child); break; + } } if (diff_channels) { |