Re: Setting variable NULL after freeing it.

From: Willy Tarreau
Date: Sat Nov 12 2022 - 06:34:23 EST


On Sat, Nov 12, 2022 at 04:18:37PM +0530, A wrote:
> >
> > It depends. What's important is not to let a pointer exist to a freed
> > location, so if you're doing:
> >
> > kfree(card->pool);
> >
> > then it's usually important to follow this by:
> >
> > card->pool = NULL;
> >
>
> I checked in kernel but at many places this is not being done. I can
> change all that code. But, will the patch be accepted?
>
> So, if someone is doing -
>
> kfree(x)
> ._some_code_
> ._some_code_
> ._some_code_
>
> Then I can change it to -
>
> kfree(x)
> x = NULL;
> ._some_code_
> ._some_code_
> ._some_code_
>
> But, will the patch be accepted for this change?

I don't think so, for the reasons I explained previously,
unless you spot real bugs there during your reviews, of
course. Better focus on your own driver for now in my
opinion.

Willy