diff options
author | Johannes Pointner <johannes.pointner@gmail.com> | 2014-08-25 10:04:00 +0200 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2014-08-25 17:55:28 +0200 |
commit | 872687f626e033b4ddfaec1e410057cfc6636d77 (patch) | |
tree | ac4b09204496fbd2c4c1f7844a8e7e60faabe654 /drivers/iio/inkern.c | |
parent | staging: android: fix a possible memory leak (diff) | |
download | linux-872687f626e033b4ddfaec1e410057cfc6636d77.tar.xz linux-872687f626e033b4ddfaec1e410057cfc6636d77.zip |
iio:inkern: fix overwritten -EPROBE_DEFER in of_iio_channel_get_by_name
Fixes: a2c12493ed7e ('iio: of_iio_channel_get_by_name() returns non-null pointers for error legs')
which improperly assumes that of_iio_channel_get_by_name must always
return NULL and thus now hides -EPROBE_DEFER.
Signed-off-by: Johannes Pointner <johannes.pointner@br-automation.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Cc: Stable@vger.kernel.org
Diffstat (limited to '')
-rw-r--r-- | drivers/iio/inkern.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/iio/inkern.c b/drivers/iio/inkern.c index c7497009d60a..f0846108d006 100644 --- a/drivers/iio/inkern.c +++ b/drivers/iio/inkern.c @@ -178,7 +178,7 @@ static struct iio_channel *of_iio_channel_get_by_name(struct device_node *np, index = of_property_match_string(np, "io-channel-names", name); chan = of_iio_channel_get(np, index); - if (!IS_ERR(chan)) + if (!IS_ERR(chan) || PTR_ERR(chan) == -EPROBE_DEFER) break; else if (name && index >= 0) { pr_err("ERROR: could not get IIO channel %s:%s(%i)\n", |