Messages in this thread | | | From | Kate Hsuan <> | Date | Mon, 20 Jun 2022 17:37:09 +0800 | Subject | Re: [PATCH v1] staging: r8188eu: an incorrect return value made the function always return fail |
| |
On Mon, Jun 20, 2022 at 5:02 PM Hans de Goede <hdegoede@redhat.com> wrote: > > Hi Kate, > > Good catch! > > On 6/20/22 10:54, Kate Hsuan wrote: > > Since _SUCCESS (1) and _FAIL (0) are used to indicate the status of the > > functions. The previous commit 8ae7bf782eacad803f752c83a183393b0a67127b > > This is the commit hash from one of the stable series backports, you > should always use the commit hash from Linus' master branch which is > f94b47c6bde6 and the format for referencing commits in a commit-message is: > > commit <12 char hash> ("commit subject") > > so in this case this should have been: > > commit f94b47c6bde6 ("staging: r8188eu: add check for kzalloc") > > Note that checkpatch.pl would have complained about the wrong format > (but not the wrong hash)
Thanks for this. I'll improve my commit message.
> > > fixed and prevented dereferencing a NULL pointer through checking the > > return pointer. The NULL pointer check work properly but the return > > values (-ENOMEM on fail and 0 on success). This work fixed the return > > values to make sure the caller function will return the correct status. > > > > BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=2097526 > > Signed-off-by: Kate Hsuan <hpa@redhat.com> > > This should have a fixes tag: > > Fixes: f94b47c6bde6 ("staging: r8188eu: add check for kzalloc") > > But while looking up the torvalds/master branch hash I noticed > someone alreayd beat you to it. Linus' master already has > a fix for this: > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/staging/r8188eu?id=5b7419ae1d208cab1e2826d473d8dab045aa75c7 > > So this patch can be dropped since it is a duplicate.
Ah~ I have to check before starting to fix it.
Thank you :)
> > Regards, > > hans > > > > > --- > > drivers/staging/r8188eu/core/rtw_xmit.c | 8 +++----- > > 1 file changed, 3 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/staging/r8188eu/core/rtw_xmit.c b/drivers/staging/r8188eu/core/rtw_xmit.c > > index f4e9f6102539..2f8720db21d9 100644 > > --- a/drivers/staging/r8188eu/core/rtw_xmit.c > > +++ b/drivers/staging/r8188eu/core/rtw_xmit.c > > @@ -180,10 +180,8 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, struct adapter *padapter) > > pxmitpriv->free_xmit_extbuf_cnt = num_xmit_extbuf; > > > > res = rtw_alloc_hwxmits(padapter); > > - if (res) { > > - res = _FAIL; > > + if (res == _FAIL) > > goto exit; > > - } > > > > rtw_init_hwxmits(pxmitpriv->hwxmits, pxmitpriv->hwxmit_entry); > > > > @@ -1510,7 +1508,7 @@ int rtw_alloc_hwxmits(struct adapter *padapter) > > > > pxmitpriv->hwxmits = kzalloc(sizeof(struct hw_xmit) * pxmitpriv->hwxmit_entry, GFP_KERNEL); > > if (!pxmitpriv->hwxmits) > > - return -ENOMEM; > > + return _FAIL; > > > > hwxmits = pxmitpriv->hwxmits; > > > > @@ -1528,7 +1526,7 @@ int rtw_alloc_hwxmits(struct adapter *padapter) > > } else { > > } > > > > - return 0; > > + return _SUCCESS; > > } > > > > void rtw_free_hwxmits(struct adapter *padapter) >
-- BR, Kate
| |