drivers/net/ethernet/amd/pds_core/core.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-)
kfree()/vfree() internally perform NULL check on the
pointer handed to it and take no action if it indeed is
NULL. Hence there is no need for a pre-check of the memory
pointer before handing it to kfree()/vfree().
Issue reported by ifnullfree.cocci Coccinelle semantic
patch script.
Signed-off-by: Bragatheswaran Manickavel <bragathemanick0908@gmail.com>
---
drivers/net/ethernet/amd/pds_core/core.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ethernet/amd/pds_core/core.c b/drivers/net/ethernet/amd/pds_core/core.c
index 2a8643e167e1..0d2091e9eb28 100644
--- a/drivers/net/ethernet/amd/pds_core/core.c
+++ b/drivers/net/ethernet/amd/pds_core/core.c
@@ -152,11 +152,8 @@ void pdsc_qcq_free(struct pdsc *pdsc, struct pdsc_qcq *qcq)
dma_free_coherent(dev, qcq->cq_size,
qcq->cq_base, qcq->cq_base_pa);
- if (qcq->cq.info)
- vfree(qcq->cq.info);
-
- if (qcq->q.info)
- vfree(qcq->q.info);
+ vfree(qcq->cq.info);
+ vfree(qcq->q.info);
memset(qcq, 0, sizeof(*qcq));
}
--
2.34.1
Hello:
This patch was applied to netdev/net-next.git (main)
by David S. Miller <davem@davemloft.net>:
On Tue, 24 Oct 2023 23:50:51 +0530 you wrote:
> kfree()/vfree() internally perform NULL check on the
> pointer handed to it and take no action if it indeed is
> NULL. Hence there is no need for a pre-check of the memory
> pointer before handing it to kfree()/vfree().
>
> Issue reported by ifnullfree.cocci Coccinelle semantic
> patch script.
>
> [...]
Here is the summary with links:
- amd/pds_core: core: No need for Null pointer check before kfree
https://git.kernel.org/netdev/net-next/c/d0110443cf4a
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
On 24.10.2023 20:20, Bragatheswaran Manickavel wrote: > kfree()/vfree() internally perform NULL check on the > pointer handed to it and take no action if it indeed is > NULL. Hence there is no need for a pre-check of the memory > pointer before handing it to kfree()/vfree(). > > Issue reported by ifnullfree.cocci Coccinelle semantic > patch script. > > Signed-off-by: Bragatheswaran Manickavel <bragathemanick0908@gmail.com> > --- Thanks for the patch! One nit, you're missing a target tag. It should be [PATCH net-next] since this not a fix IMO. Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com> > drivers/net/ethernet/amd/pds_core/core.c | 7 ++----- > 1 file changed, 2 insertions(+), 5 deletions(-) > > diff --git a/drivers/net/ethernet/amd/pds_core/core.c b/drivers/net/ethernet/amd/pds_core/core.c > index 2a8643e167e1..0d2091e9eb28 100644 > --- a/drivers/net/ethernet/amd/pds_core/core.c > +++ b/drivers/net/ethernet/amd/pds_core/core.c > @@ -152,11 +152,8 @@ void pdsc_qcq_free(struct pdsc *pdsc, struct pdsc_qcq *qcq) > dma_free_coherent(dev, qcq->cq_size, > qcq->cq_base, qcq->cq_base_pa); > > - if (qcq->cq.info) > - vfree(qcq->cq.info); > - > - if (qcq->q.info) > - vfree(qcq->q.info); > + vfree(qcq->cq.info); > + vfree(qcq->q.info); > > memset(qcq, 0, sizeof(*qcq)); > }
Thanks Shannon! On 25/10/23 14:52, Wojciech Drewek wrote: > > On 24.10.2023 20:20, Bragatheswaran Manickavel wrote: >> kfree()/vfree() internally perform NULL check on the >> pointer handed to it and take no action if it indeed is >> NULL. Hence there is no need for a pre-check of the memory >> pointer before handing it to kfree()/vfree(). >> >> Issue reported by ifnullfree.cocci Coccinelle semantic >> patch script. >> >> Signed-off-by: Bragatheswaran Manickavel <bragathemanick0908@gmail.com> >> --- > Thanks for the patch! > One nit, you're missing a target tag. It should be [PATCH net-next] since this not a fix IMO. > Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com> Hi Wojciech, Will take care of this next time. Thanks! >> drivers/net/ethernet/amd/pds_core/core.c | 7 ++----- >> 1 file changed, 2 insertions(+), 5 deletions(-) >> >> diff --git a/drivers/net/ethernet/amd/pds_core/core.c b/drivers/net/ethernet/amd/pds_core/core.c >> index 2a8643e167e1..0d2091e9eb28 100644 >> --- a/drivers/net/ethernet/amd/pds_core/core.c >> +++ b/drivers/net/ethernet/amd/pds_core/core.c >> @@ -152,11 +152,8 @@ void pdsc_qcq_free(struct pdsc *pdsc, struct pdsc_qcq *qcq) >> dma_free_coherent(dev, qcq->cq_size, >> qcq->cq_base, qcq->cq_base_pa); >> >> - if (qcq->cq.info) >> - vfree(qcq->cq.info); >> - >> - if (qcq->q.info) >> - vfree(qcq->q.info); >> + vfree(qcq->cq.info); >> + vfree(qcq->q.info); >> >> memset(qcq, 0, sizeof(*qcq)); >> }
On 10/24/2023 11:20 AM, Bragatheswaran Manickavel wrote: > > kfree()/vfree() internally perform NULL check on the > pointer handed to it and take no action if it indeed is > NULL. Hence there is no need for a pre-check of the memory > pointer before handing it to kfree()/vfree(). > > Issue reported by ifnullfree.cocci Coccinelle semantic > patch script. > > Signed-off-by: Bragatheswaran Manickavel <bragathemanick0908@gmail.com> Thanks -sln Reviewed-by: Shannon Nelson <shannon.nelson@amd.com> > --- > drivers/net/ethernet/amd/pds_core/core.c | 7 ++----- > 1 file changed, 2 insertions(+), 5 deletions(-) > > diff --git a/drivers/net/ethernet/amd/pds_core/core.c b/drivers/net/ethernet/amd/pds_core/core.c > index 2a8643e167e1..0d2091e9eb28 100644 > --- a/drivers/net/ethernet/amd/pds_core/core.c > +++ b/drivers/net/ethernet/amd/pds_core/core.c > @@ -152,11 +152,8 @@ void pdsc_qcq_free(struct pdsc *pdsc, struct pdsc_qcq *qcq) > dma_free_coherent(dev, qcq->cq_size, > qcq->cq_base, qcq->cq_base_pa); > > - if (qcq->cq.info) > - vfree(qcq->cq.info); > - > - if (qcq->q.info) > - vfree(qcq->q.info); > + vfree(qcq->cq.info); > + vfree(qcq->q.info); > > memset(qcq, 0, sizeof(*qcq)); > } > -- > 2.34.1 >
© 2016 - 2026 Red Hat, Inc.