Re: [PATCH 2/2] staging: vme_user: Use __func__ instead of function name

From: Soumya Negi
Date: Wed Oct 18 2023 - 16:31:11 EST


Hi Andi,

On Wed, Oct 18, 2023 at 01:00:01PM +0200, Andi Shyti wrote:
> Hi Soumya,
>
> On Tue, Oct 17, 2023 at 09:36:33PM -0700, Soumya Negi wrote:
> > Replace function names in message strings with __func__ to fix
> > all checkpatch warnings like:
> >
> > WARNING: Prefer using '"%s...", __func__' to using 'vme_lm_get',
> > this function's name, in a string
> >
> > Signed-off-by: Soumya Negi <soumya.negi97@xxxxxxxxx>
> > ---
> > drivers/staging/vme_user/vme.c | 14 +++++++-------
> > 1 file changed, 7 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/staging/vme_user/vme.c b/drivers/staging/vme_user/vme.c
> > index e8c2c1e77b7d..11c1df12b657 100644
> > --- a/drivers/staging/vme_user/vme.c
> > +++ b/drivers/staging/vme_user/vme.c
> > @@ -422,7 +422,7 @@ int vme_slave_get(struct vme_resource *resource, int *enabled,
> > image = list_entry(resource->entry, struct vme_slave_resource, list);
> >
> > if (!bridge->slave_get) {
> > - dev_err(bridge->parent, "vme_slave_get not supported\n");
> > + dev_err(bridge->parent, "%s not supported\n", __func__);
> > return -EINVAL;
> > }
> >
> > @@ -572,7 +572,7 @@ int vme_master_set(struct vme_resource *resource, int enabled,
> > image = list_entry(resource->entry, struct vme_master_resource, list);
> >
> > if (!bridge->master_set) {
> > - dev_warn(bridge->parent, "vme_master_set not supported\n");
> > + dev_warn(bridge->parent, "%s not supported\n", __func__);
>
> I wouldn't disagree if you made this dev_err() instead of
> dev_warn(). The reasoning behind is that if it's a warning you
> should not fail. But beacuse you are returning -EINVAL it means
> that you are failing, therefore you should use dev_err().
>
> Others might object that the change I'm suggesting sohuld go in a
> different patch, which is also OK.
>
> > return -EINVAL;
>
> ... or, if you want to keep the dev_warn(), whou can consider
> removing the "return -EINVAL;". But this is an evaluation you
> should make in a different patch and mainly evaluate if it's
> OK to remove the error here.

I think it should be dev_err() too. The driver has inconsistently used
warn and err log levels in similar functions as well. But I was planning
to tackle those in a standalone patch after the printk's are gone. Or do
you think it should be part of this patchset?

> > if (!bridge->slot_get) {
> > - dev_warn(bridge->parent, "vme_slot_num not supported\n");
> > + dev_warn(bridge->parent, "%s not supported\n", __func__);
> > return -EINVAL;
> > }
>
> Nothing wrong with the patch itself. But imagine if we end up in
> one of those printouts and, as a user, you read something like:
>
> ... vme_slot_num not supported
>
> The message itself doesn't say much to the user. The perfect fix
> would be to re-write all these error messages with a proper
> meaningful sentence, like, e.g.:
>
> Can't retrieve the CS/CSR slot id
>
> (don't even know if it's fully correct). Anyway, I understand
> you don't have much time for such fine changes, so whatever you
> decide to do:

Got it. Thanks for the patch suggestion. Although yes, since I still have project
starter tasks pending for my outreachy application(will have to prioritize
them) I'm not sure if I will be able to get this done right away. Will try to
though.

> Acked-by: Andi Shyti <andi.shyti@xxxxxxxxxxxxxxx>
>
> Andi

Thanks for the ack. Since I'll have to revise and resend this patch as v2,
should I not add your ack tag as the patch will be reviewed again? Just
wondering what the etiquette is.

Though normally are patches supposed to be resent as new versions when adding
ack tags?

Regards,
Soumya