Message ID | 20210429084914.12003-1-pawell@gli-login.cadence.com |
---|---|
State | Superseded |
Headers | show |
Series | usb: cdnsp: Useless condition has been removed | expand |
On 21-04-29 10:49:14, Pawel Laszczak wrote: > From: Pawel Laszczak <pawell@cadence.com> > > Patch removes the warning "variable dereferenced before > check 'pdev->dcbaa'" from cdnsp_mem_cleanup. You may describe the real problem you fix, but not the warning message from some auto build system. > > Reported-by: kernel test robot <lkp@intel.com> > Reported-by: Dan Carpenter <dan.carpenter@oracle.com> > Signed-off-by: Pawel Laszczak <pawell@cadence.com> > --- > drivers/usb/cdns3/cdnsp-mem.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/drivers/usb/cdns3/cdnsp-mem.c b/drivers/usb/cdns3/cdnsp-mem.c > index 5d4c4bfe15b7..a47948a1623f 100644 > --- a/drivers/usb/cdns3/cdnsp-mem.c > +++ b/drivers/usb/cdns3/cdnsp-mem.c > @@ -1082,9 +1082,8 @@ void cdnsp_mem_cleanup(struct cdnsp_device *pdev) > dma_pool_destroy(pdev->device_pool); > pdev->device_pool = NULL; > > - if (pdev->dcbaa) > - dma_free_coherent(dev, sizeof(*pdev->dcbaa), > - pdev->dcbaa, pdev->dcbaa->dma); > + dma_free_coherent(dev, sizeof(*pdev->dcbaa), > + pdev->dcbaa, pdev->dcbaa->dma); > > pdev->dcbaa = NULL; > > -- > 2.25.1 > -- Thanks, Peter Chen
On Fri, Apr 30, 2021 at 11:43:49AM +0800, Peter Chen wrote: > On 21-04-29 10:49:14, Pawel Laszczak wrote: > > From: Pawel Laszczak <pawell@cadence.com> > > > > Patch removes the warning "variable dereferenced before > > check 'pdev->dcbaa'" from cdnsp_mem_cleanup. > > You may describe the real problem you fix, but not the warning > message from some auto build system. > I really feel people have become too lost in the weeds of what matters and what does not. For internships, people want picky feedback in case they're forced to deal with the ultra drill sargent maintainers. But really the important thing in a commit message is if you can understand the problem and the fix. In this case everyone who is capable of understanding the patch can understand the commit message. Also if you're going to criticize someone's commit message then just write it the way you want so they can copy and paste. I had someone yesterday say that my commit message where I deleted a NULL check and related dead code was not clear enough that the behavior was "intentional" and I took that to mean that they wanted me to say that deleting the dead code did not change runtime behavior. I'm still not sure that's what they wanted me to add... The point is no one can read your mind, if you want a commit message to say something specific then just say it instead of hinting around the bush and we have to send a v2 and v3 commit message. regards, dan carpenter
On 21-04-30 07:52:48, Dan Carpenter wrote: > On Fri, Apr 30, 2021 at 11:43:49AM +0800, Peter Chen wrote: > > On 21-04-29 10:49:14, Pawel Laszczak wrote: > > > From: Pawel Laszczak <pawell@cadence.com> > > > > > > Patch removes the warning "variable dereferenced before > > > check 'pdev->dcbaa'" from cdnsp_mem_cleanup. > > > > You may describe the real problem you fix, but not the warning > > message from some auto build system. > > > > I really feel people have become too lost in the weeds of what matters > and what does not. For internships, people want picky feedback in case > they're forced to deal with the ultra drill sargent maintainers. But > really the important thing in a commit message is if you can understand > the problem and the fix. In this case everyone who is capable of > understanding the patch can understand the commit message. > > Also if you're going to criticize someone's commit message then just > write it the way you want so they can copy and paste. I had someone > yesterday say that my commit message where I deleted a NULL check and > related dead code was not clear enough that the behavior was > "intentional" and I took that to mean that they wanted me to say that > deleting the dead code did not change runtime behavior. I'm still not > sure that's what they wanted me to add... The point is no one can read > your mind, if you want a commit message to say something specific then > just say it instead of hinting around the bush and we have to send a v2 > and v3 commit message. > > regards, > dan carpenter Hi Dan, Thanks for your comments, it's the good suggestion. But everyone may have slight different criteria that what's really clear. For this patch, I don't understand the commits, the pdev->dcbaa is set as NULL after dma_free_coherent, why it has this warning. -- Thanks, Peter Chen
On Fri, Apr 30, 2021 at 03:11:45PM +0800, Peter Chen wrote: > On 21-04-30 07:52:48, Dan Carpenter wrote: > > On Fri, Apr 30, 2021 at 11:43:49AM +0800, Peter Chen wrote: > > > On 21-04-29 10:49:14, Pawel Laszczak wrote: > > > > From: Pawel Laszczak <pawell@cadence.com> > > > > > > > > Patch removes the warning "variable dereferenced before > > > > check 'pdev->dcbaa'" from cdnsp_mem_cleanup. > > > > > > You may describe the real problem you fix, but not the warning > > > message from some auto build system. > > > > > > > I really feel people have become too lost in the weeds of what matters > > and what does not. For internships, people want picky feedback in case > > they're forced to deal with the ultra drill sargent maintainers. But > > really the important thing in a commit message is if you can understand > > the problem and the fix. In this case everyone who is capable of > > understanding the patch can understand the commit message. > > > > Also if you're going to criticize someone's commit message then just > > write it the way you want so they can copy and paste. I had someone > > yesterday say that my commit message where I deleted a NULL check and > > related dead code was not clear enough that the behavior was > > "intentional" and I took that to mean that they wanted me to say that > > deleting the dead code did not change runtime behavior. I'm still not > > sure that's what they wanted me to add... The point is no one can read > > your mind, if you want a commit message to say something specific then > > just say it instead of hinting around the bush and we have to send a v2 > > and v3 commit message. > > > > regards, > > dan carpenter > > Hi Dan, > > Thanks for your comments, it's the good suggestion. But everyone may have > slight different criteria that what's really clear. > > For this patch, I don't understand the commits, the pdev->dcbaa is set as > NULL after dma_free_coherent, why it has this warning. > Hm... I guess it's a fair point that it's not clear to the reviewer where the unchecked dereference happens. Here is how I would write that commit. This code generates a Smatch warning: drivers/usb/cdns3/cdnsp-mem.c:1085 cdnsp_mem_cleanup() warn: variable dereferenced before check 'pdev->dcbaa' (see line 1067) The unchecked dereference happens inside the function when we call: cdnsp_free_priv_device(pdev); But fortunately, the "pdev->dcbaa" pointer can never be NULL so it does not lead to a runtime issue. We can just remove the NULL check which silences the warning and makes the code consistent. regards, dan carpenter
diff --git a/drivers/usb/cdns3/cdnsp-mem.c b/drivers/usb/cdns3/cdnsp-mem.c index 5d4c4bfe15b7..a47948a1623f 100644 --- a/drivers/usb/cdns3/cdnsp-mem.c +++ b/drivers/usb/cdns3/cdnsp-mem.c @@ -1082,9 +1082,8 @@ void cdnsp_mem_cleanup(struct cdnsp_device *pdev) dma_pool_destroy(pdev->device_pool); pdev->device_pool = NULL; - if (pdev->dcbaa) - dma_free_coherent(dev, sizeof(*pdev->dcbaa), - pdev->dcbaa, pdev->dcbaa->dma); + dma_free_coherent(dev, sizeof(*pdev->dcbaa), + pdev->dcbaa, pdev->dcbaa->dma); pdev->dcbaa = NULL;