On Sat, 6 Mar 2021 18:28:34 +0200 Alexandru Ardelean <ardeleanalex@xxxxxxxxx> wrote: > As pointed by Lars, this doesn't require a zero-check. Also, while looking > at this a little closer at it (again), the masking can be done later, as > there is a zero-check for 'mode_flags' anyway, which returns -EINVAL. And > we only need the 'mode_flags' later in the logic. > > This change is more of a tweak. > > Fixes: ae9886d6aa29 ("iio: kfifo: add devm_iio_kfifo_buffer_setup() helper") > Cc: Lars-Peter Clausen <lars@xxxxxxxxxx> > Signed-off-by: Alexandru Ardelean <ardeleanalex@xxxxxxxxx> I've applied this as a separate patch. Thanks, Jonathan > --- > > Apologies for the late-ness of this. > I don't know if this makes sense to squash in the original, or to have > as a fix commit. > It is a bit messy now that the original is committed into the tree, > and now we're fixing/tweaking it. > > drivers/iio/buffer/kfifo_buf.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/drivers/iio/buffer/kfifo_buf.c b/drivers/iio/buffer/kfifo_buf.c > index e8a434f84778..8e3a1a9e495c 100644 > --- a/drivers/iio/buffer/kfifo_buf.c > +++ b/drivers/iio/buffer/kfifo_buf.c > @@ -275,9 +275,6 @@ int devm_iio_kfifo_buffer_setup(struct device *dev, > { > struct iio_buffer *buffer; > > - if (mode_flags) > - mode_flags &= kfifo_access_funcs.modes; > - > if (!mode_flags) > return -EINVAL; > > @@ -285,6 +282,8 @@ int devm_iio_kfifo_buffer_setup(struct device *dev, > if (!buffer) > return -ENOMEM; > > + mode_flags &= kfifo_access_funcs.modes; > + > indio_dev->modes |= mode_flags; > indio_dev->setup_ops = setup_ops; >