Commit 0d4b2184 authored by Jonathan Cameron's avatar Jonathan Cameron

iio: Use an early return in iio_device_alloc to simplify code.

Noticed whilst reviewing Alexandru's patch to the same function.
If we simply flip the logic and return NULL immediately after memory
allocation failure we reduce the indent of the following block and
end up with more 'idiomatic' kernel code.
Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: default avatarAlexandru Ardelean <alexandru.ardelean@analog.com>
parent 151e9173
...@@ -1510,27 +1510,27 @@ struct iio_dev *iio_device_alloc(int sizeof_priv) ...@@ -1510,27 +1510,27 @@ struct iio_dev *iio_device_alloc(int sizeof_priv)
alloc_size += IIO_ALIGN - 1; alloc_size += IIO_ALIGN - 1;
dev = kzalloc(alloc_size, GFP_KERNEL); dev = kzalloc(alloc_size, GFP_KERNEL);
if (!dev)
return NULL;
if (dev) { dev->dev.groups = dev->groups;
dev->dev.groups = dev->groups; dev->dev.type = &iio_device_type;
dev->dev.type = &iio_device_type; dev->dev.bus = &iio_bus_type;
dev->dev.bus = &iio_bus_type; device_initialize(&dev->dev);
device_initialize(&dev->dev); dev_set_drvdata(&dev->dev, (void *)dev);
dev_set_drvdata(&dev->dev, (void *)dev); mutex_init(&dev->mlock);
mutex_init(&dev->mlock); mutex_init(&dev->info_exist_lock);
mutex_init(&dev->info_exist_lock); INIT_LIST_HEAD(&dev->channel_attr_list);
INIT_LIST_HEAD(&dev->channel_attr_list);
dev->id = ida_simple_get(&iio_ida, 0, 0, GFP_KERNEL);
dev->id = ida_simple_get(&iio_ida, 0, 0, GFP_KERNEL); if (dev->id < 0) {
if (dev->id < 0) { /* cannot use a dev_err as the name isn't available */
/* cannot use a dev_err as the name isn't available */ pr_err("failed to get device id\n");
pr_err("failed to get device id\n"); kfree(dev);
kfree(dev); return NULL;
return NULL;
}
dev_set_name(&dev->dev, "iio:device%d", dev->id);
INIT_LIST_HEAD(&dev->buffer_list);
} }
dev_set_name(&dev->dev, "iio:device%d", dev->id);
INIT_LIST_HEAD(&dev->buffer_list);
return dev; return dev;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment