Re: [PATCH v1 3/7] powercap/dtpm: Fixup kfree for virtual node

From: Ulf Hansson
Date: Tue Feb 22 2022 - 10:55:51 EST


On Fri, 18 Feb 2022 at 14:18, Daniel Lezcano <daniel.lezcano@xxxxxxxxxx> wrote:
>
> On 17/02/2022 16:45, Ulf Hansson wrote:
>
> [ ... ]
>
> > Does ops->release() also resets the "dtpm" pointer to NULL? If not,
> > it's good practice that it should, right?
> >
> > In that case, we would be calling "kfree(NULL);" the second time,
> > which is perfectly fine.
>
> So you suggest to replace:
>
> if (ops->release)
> ops->release(dtpm);
> else
> kfree(dtpm);
>
> By:
>
> if (ops->release) {
> ops->release(dtpm);
> dtpm = NULL;
> }
>

I don't have a strong opinion how to code this.

What I was trying to point out was that if ->ops->release() frees the
memory it could/should also reset the pointer to NULL.

And if that is already done, the kfree below is harmless and there
would be nothing to "fix".

> kfree(dtpm);
>
> ?

Kind regards
Uffe