Re: [PATCH v7 1/1] gpio: add sloppy logic analyzer using polling
From: Wolfram Sang
Date: Mon Mar 28 2022 - 05:37:42 EST
Hi Andy,
> > + for (i = 0; i < priv->trig_len; i+= 2) {
>
> Missed space.
Yes.
> > +static int fops_buf_size_set(void *data, u64 val)
> > +{
> > + struct gpio_la_poll_priv *priv = data;
>
> > + int ret = 0;
>
> Instead of this assignment and other related things, can we do the following?
>
> > + void *p;
> > +
> > + if (!val)
> > + return -EINVAL;
> > +
> > + mutex_lock(&priv->lock);
> > +
> > + vfree(priv->blob.data);
>
> priv->blob.data = NULL;
> priv->blob.size = 0;
>
> > + p = vzalloc(val);
> > + if (!p) {
> > + val = 0;
> > + ret = -ENOMEM;
> > + }
>
> p = vzalloc(val);
> if (!p)
> return -ENOMEM;
>
> > + priv->blob.data = p;
> > + priv->blob.size = val;
I don't like assigning 'priv' memebers twice, so I'd like to keep it as
is.
> > +static const struct file_operations fops_trigger = {
> > + .owner = THIS_MODULE,
> > + .open = trigger_open,
> > + .write = trigger_write,
> > + .llseek = no_llseek,
> > + .release = single_release,
> > +};
>
> Can it be wrapped by DEFINE_SHOW_ATTRIBUTE()?
I don't see a way. Do you?
> > + dev_info(dev, "initialized");
>
> Not sure how this one would be helpful.
Then please check my comments on your previous reviews.
All the best,
Wolfram
Attachment:
signature.asc
Description: PGP signature