There was a recent discussion about this code:
  https://lore.kernel.org/linux-iio/20200322165317.0b1f0674@archlinux/

This looks like a good time to rework this, since any issues about it
should pop-up under testing, because the iio_dev is having a bit of an
overhaul and stuff being moved to iio_dev_priv.

Signed-off-by: Alexandru Ardelean <alexandru.ardel...@analog.com>
---
 drivers/iio/industrialio-core.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
index f0888dd84d3d..b924197b5984 100644
--- a/drivers/iio/industrialio-core.c
+++ b/drivers/iio/industrialio-core.c
@@ -1521,13 +1521,9 @@ struct iio_dev *iio_device_alloc(int sizeof_priv)
        struct iio_dev *dev;
        size_t alloc_size;
 
-       alloc_size = sizeof(struct iio_dev_priv);
-       if (sizeof_priv) {
-               alloc_size = ALIGN(alloc_size, IIO_ALIGN);
-               alloc_size += sizeof_priv;
-       }
-       /* ensure 32-byte alignment of whole construct ? */
-       alloc_size += IIO_ALIGN - 1;
+       alloc_size = ALIGN(sizeof(struct iio_dev_priv), IIO_ALIGN);
+       if (sizeof_priv)
+               alloc_size += ALIGN(sizeof_priv, IIO_ALIGN);
 
        iio_dev_priv = kzalloc(alloc_size, GFP_KERNEL);
        if (!iio_dev_priv)
-- 
2.17.1

Reply via email to