diff options
-rw-r--r-- | drivers/iio/inkern.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/iio/inkern.c b/drivers/iio/inkern.c index 25b00761005a..e38f41464fe4 100644 --- a/drivers/iio/inkern.c +++ b/drivers/iio/inkern.c | |||
@@ -132,7 +132,7 @@ struct iio_channel *iio_channel_get(const char *name, const char *channel_name) | |||
132 | 132 | ||
133 | channel = kzalloc(sizeof(*channel), GFP_KERNEL); | 133 | channel = kzalloc(sizeof(*channel), GFP_KERNEL); |
134 | if (channel == NULL) | 134 | if (channel == NULL) |
135 | return ERR_PTR(-ENOMEM); | 135 | goto error_no_mem; |
136 | 136 | ||
137 | channel->indio_dev = c->indio_dev; | 137 | channel->indio_dev = c->indio_dev; |
138 | 138 | ||
@@ -151,6 +151,9 @@ error_no_chan: | |||
151 | iio_device_put(c->indio_dev); | 151 | iio_device_put(c->indio_dev); |
152 | kfree(channel); | 152 | kfree(channel); |
153 | return ERR_PTR(-EINVAL); | 153 | return ERR_PTR(-EINVAL); |
154 | error_no_mem: | ||
155 | iio_device_put(c->indio_dev); | ||
156 | return ERR_PTR(-ENOMEM); | ||
154 | } | 157 | } |
155 | EXPORT_SYMBOL_GPL(iio_channel_get); | 158 | EXPORT_SYMBOL_GPL(iio_channel_get); |
156 | 159 | ||