mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-18 11:17:07 +00:00
iio: multiplexer: add NULL check on devm_kzalloc() and devm_kmemdup() return values
Check return values from call to devm_kzalloc() and devm_kmemup() in order to prevent a NULL pointer dereference. This issue was detected using Coccinelle and the following semantic patch: @@ expression x; identifier fld; @@ * x = devm_kzalloc(...); ... when != x == NULL x->fld Fixes: 7ba9df54b091 ("iio: multiplexer: new iio category and iio-mux driver") Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com> Acked-by: Peter Rosin <peda@axentia.se> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
parent
9d2f715d59
commit
dd92d5ea20
@ -284,6 +284,9 @@ static int mux_configure_channel(struct device *dev, struct mux *mux,
|
||||
child->ext_info_cache = devm_kzalloc(dev,
|
||||
sizeof(*child->ext_info_cache) *
|
||||
num_ext_info, GFP_KERNEL);
|
||||
if (!child->ext_info_cache)
|
||||
return -ENOMEM;
|
||||
|
||||
for (i = 0; i < num_ext_info; ++i) {
|
||||
child->ext_info_cache[i].size = -1;
|
||||
|
||||
@ -308,6 +311,9 @@ static int mux_configure_channel(struct device *dev, struct mux *mux,
|
||||
|
||||
child->ext_info_cache[i].data = devm_kmemdup(dev, page, ret + 1,
|
||||
GFP_KERNEL);
|
||||
if (!child->ext_info_cache[i].data)
|
||||
return -ENOMEM;
|
||||
|
||||
child->ext_info_cache[i].data[ret] = 0;
|
||||
child->ext_info_cache[i].size = ret;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user