From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932169AbaJaSBM (ORCPT ); Fri, 31 Oct 2014 14:01:12 -0400 Received: from mail2-relais-roc.national.inria.fr ([192.134.164.83]:8469 "EHLO mail2-relais-roc.national.inria.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750808AbaJaSBK (ORCPT ); Fri, 31 Oct 2014 14:01:10 -0400 X-IronPort-AV: E=Sophos;i="5.07,295,1413237600"; d="scan'208";a="104017760" Date: Fri, 31 Oct 2014 19:01:06 +0100 (CET) From: Julia Lawall X-X-Sender: jll@hadrien To: SF Markus Elfring cc: Greg Kroah-Hartman , devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org, trivial@kernel.org, Coccinelle Subject: Re: [PATCH resent] staging: rtl8188eu: Deletion of unnecessary checks before three function calls In-Reply-To: <5453CD0D.9010206@users.sourceforge.net> Message-ID: References: <530C5E18.1020800@users.sourceforge.net> <530CD2C4.4050903@users.sourceforge.net> <530CF8FF.8080600@users.sourceforge.net> <530DD06F.4090703@users.sourceforge.net> <5317A59D.4@users.sourceforge.net> <544954FD.8040607@users.sourceforge.net> <20141029084702.GA18675@kroah.com> <5453CD0D.9010206@users.sourceforge.net> User-Agent: Alpine 2.10 (DEB 1266 2009-07-14) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 31 Oct 2014, SF Markus Elfring wrote: > The functions kfree(), rtw_free_netdev() and vfree() test whether their > argument is NULL and then return immediately. Thus the test around the call > is not needed. > > This issue was detected by using the Coccinelle software. > > Signed-off-by: Markus Elfring > --- > drivers/staging/rtl8188eu/core/rtw_efuse.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_mlme.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_sta_mgt.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_xmit.c | 6 ++---- > drivers/staging/rtl8188eu/os_dep/usb_intf.c | 5 ++--- > 5 files changed, 7 insertions(+), 13 deletions(-) > > diff --git a/drivers/staging/rtl8188eu/core/rtw_efuse.c > b/drivers/staging/rtl8188eu/core/rtw_efuse.c > index 7006088..77f7552 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_efuse.c > +++ b/drivers/staging/rtl8188eu/core/rtw_efuse.c > @@ -212,8 +212,7 @@ efuse_phymap_to_logical(u8 *phymap, u16 _offset, u16 > _size_byte, u8 *pbuf) > exit: > kfree(efuseTbl); > > - if (eFuseWord) > - kfree(eFuseWord); > + kfree(eFuseWord); I think that this code has been updated already. It would be better to add labels so that kfree is only executed when needed. julia > } > > static void efuse_read_phymap_from_txpktbuf( > diff --git a/drivers/staging/rtl8188eu/core/rtw_mlme.c > b/drivers/staging/rtl8188eu/core/rtw_mlme.c > index 149c271..df54350 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_mlme.c > +++ b/drivers/staging/rtl8188eu/core/rtw_mlme.c > @@ -122,8 +122,7 @@ void rtw_free_mlme_priv(struct mlme_priv *pmlmepriv) > rtw_free_mlme_priv_ie_data(pmlmepriv); > > if (pmlmepriv) { > - if (pmlmepriv->free_bss_buf) > - vfree(pmlmepriv->free_bss_buf); > + vfree(pmlmepriv->free_bss_buf); > } > } > > diff --git a/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > b/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > index e1dc8fa..af1de9c 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > +++ b/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > @@ -201,8 +201,7 @@ u32 _rtw_free_sta_priv(struct sta_priv *pstapriv) > > rtw_mfree_sta_priv_lock(pstapriv); > > - if (pstapriv->pallocated_stainfo_buf) > - vfree(pstapriv->pallocated_stainfo_buf); > + vfree(pstapriv->pallocated_stainfo_buf); > } > > return _SUCCESS; > diff --git a/drivers/staging/rtl8188eu/core/rtw_xmit.c > b/drivers/staging/rtl8188eu/core/rtw_xmit.c > index 639ace0..011c9cf 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_xmit.c > +++ b/drivers/staging/rtl8188eu/core/rtw_xmit.c > @@ -246,11 +246,9 @@ void _rtw_free_xmit_priv (struct xmit_priv *pxmitpriv) > pxmitbuf++; > } > > - if (pxmitpriv->pallocated_frame_buf) > - vfree(pxmitpriv->pallocated_frame_buf); > + vfree(pxmitpriv->pallocated_frame_buf); > > - if (pxmitpriv->pallocated_xmitbuf) > - vfree(pxmitpriv->pallocated_xmitbuf); > + vfree(pxmitpriv->pallocated_xmitbuf); > > /* free xmit extension buff */ > pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmit_extbuf; > diff --git a/drivers/staging/rtl8188eu/os_dep/usb_intf.c > b/drivers/staging/rtl8188eu/os_dep/usb_intf.c > index 407a318..cdb70e4 100644 > --- a/drivers/staging/rtl8188eu/os_dep/usb_intf.c > +++ b/drivers/staging/rtl8188eu/os_dep/usb_intf.c > @@ -456,7 +456,7 @@ free_adapter: > if (status != _SUCCESS) { > if (pnetdev) > rtw_free_netdev(pnetdev); > - else if (padapter) > + else > vfree(padapter); > padapter = NULL; > } > @@ -487,8 +487,7 @@ static void rtw_usb_if1_deinit(struct adapter *if1) > DBG_88E("+r871xu_dev_remove, hw_init_completed=%d\n", > if1->hw_init_completed); > rtw_free_drv_sw(if1); > - if (pnetdev) > - rtw_free_netdev(pnetdev); > + rtw_free_netdev(pnetdev); > } > > static int rtw_drv_init(struct usb_interface *pusb_intf, const struct > usb_device_id *pdid) > -- > 2.1.2 > > -- > To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julia Lawall Date: Fri, 31 Oct 2014 18:01:06 +0000 Subject: Re: [PATCH resent] staging: rtl8188eu: Deletion of unnecessary checks before three function calls Message-Id: List-Id: References: <530C5E18.1020800@users.sourceforge.net> <530CD2C4.4050903@users.sourceforge.net> <530CF8FF.8080600@users.sourceforge.net> <530DD06F.4090703@users.sourceforge.net> <5317A59D.4@users.sourceforge.net> <544954FD.8040607@users.sourceforge.net> <20141029084702.GA18675@kroah.com> <5453CD0D.9010206@users.sourceforge.net> In-Reply-To: <5453CD0D.9010206@users.sourceforge.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: cocci@systeme.lip6.fr On Fri, 31 Oct 2014, SF Markus Elfring wrote: > The functions kfree(), rtw_free_netdev() and vfree() test whether their > argument is NULL and then return immediately. Thus the test around the call > is not needed. > > This issue was detected by using the Coccinelle software. > > Signed-off-by: Markus Elfring > --- > drivers/staging/rtl8188eu/core/rtw_efuse.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_mlme.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_sta_mgt.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_xmit.c | 6 ++---- > drivers/staging/rtl8188eu/os_dep/usb_intf.c | 5 ++--- > 5 files changed, 7 insertions(+), 13 deletions(-) > > diff --git a/drivers/staging/rtl8188eu/core/rtw_efuse.c > b/drivers/staging/rtl8188eu/core/rtw_efuse.c > index 7006088..77f7552 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_efuse.c > +++ b/drivers/staging/rtl8188eu/core/rtw_efuse.c > @@ -212,8 +212,7 @@ efuse_phymap_to_logical(u8 *phymap, u16 _offset, u16 > _size_byte, u8 *pbuf) > exit: > kfree(efuseTbl); > > - if (eFuseWord) > - kfree(eFuseWord); > + kfree(eFuseWord); I think that this code has been updated already. It would be better to add labels so that kfree is only executed when needed. julia > } > > static void efuse_read_phymap_from_txpktbuf( > diff --git a/drivers/staging/rtl8188eu/core/rtw_mlme.c > b/drivers/staging/rtl8188eu/core/rtw_mlme.c > index 149c271..df54350 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_mlme.c > +++ b/drivers/staging/rtl8188eu/core/rtw_mlme.c > @@ -122,8 +122,7 @@ void rtw_free_mlme_priv(struct mlme_priv *pmlmepriv) > rtw_free_mlme_priv_ie_data(pmlmepriv); > > if (pmlmepriv) { > - if (pmlmepriv->free_bss_buf) > - vfree(pmlmepriv->free_bss_buf); > + vfree(pmlmepriv->free_bss_buf); > } > } > > diff --git a/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > b/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > index e1dc8fa..af1de9c 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > +++ b/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > @@ -201,8 +201,7 @@ u32 _rtw_free_sta_priv(struct sta_priv *pstapriv) > > rtw_mfree_sta_priv_lock(pstapriv); > > - if (pstapriv->pallocated_stainfo_buf) > - vfree(pstapriv->pallocated_stainfo_buf); > + vfree(pstapriv->pallocated_stainfo_buf); > } > > return _SUCCESS; > diff --git a/drivers/staging/rtl8188eu/core/rtw_xmit.c > b/drivers/staging/rtl8188eu/core/rtw_xmit.c > index 639ace0..011c9cf 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_xmit.c > +++ b/drivers/staging/rtl8188eu/core/rtw_xmit.c > @@ -246,11 +246,9 @@ void _rtw_free_xmit_priv (struct xmit_priv *pxmitpriv) > pxmitbuf++; > } > > - if (pxmitpriv->pallocated_frame_buf) > - vfree(pxmitpriv->pallocated_frame_buf); > + vfree(pxmitpriv->pallocated_frame_buf); > > - if (pxmitpriv->pallocated_xmitbuf) > - vfree(pxmitpriv->pallocated_xmitbuf); > + vfree(pxmitpriv->pallocated_xmitbuf); > > /* free xmit extension buff */ > pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmit_extbuf; > diff --git a/drivers/staging/rtl8188eu/os_dep/usb_intf.c > b/drivers/staging/rtl8188eu/os_dep/usb_intf.c > index 407a318..cdb70e4 100644 > --- a/drivers/staging/rtl8188eu/os_dep/usb_intf.c > +++ b/drivers/staging/rtl8188eu/os_dep/usb_intf.c > @@ -456,7 +456,7 @@ free_adapter: > if (status != _SUCCESS) { > if (pnetdev) > rtw_free_netdev(pnetdev); > - else if (padapter) > + else > vfree(padapter); > padapter = NULL; > } > @@ -487,8 +487,7 @@ static void rtw_usb_if1_deinit(struct adapter *if1) > DBG_88E("+r871xu_dev_remove, hw_init_completed=%d\n", > if1->hw_init_completed); > rtw_free_drv_sw(if1); > - if (pnetdev) > - rtw_free_netdev(pnetdev); > + rtw_free_netdev(pnetdev); > } > > static int rtw_drv_init(struct usb_interface *pusb_intf, const struct > usb_device_id *pdid) > -- > 2.1.2 > > -- > To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > From mboxrd@z Thu Jan 1 00:00:00 1970 From: julia.lawall@lip6.fr (Julia Lawall) Date: Fri, 31 Oct 2014 19:01:06 +0100 (CET) Subject: [Cocci] [PATCH resent] staging: rtl8188eu: Deletion of unnecessary checks before three function calls In-Reply-To: <5453CD0D.9010206@users.sourceforge.net> References: <530C5E18.1020800@users.sourceforge.net> <530CD2C4.4050903@users.sourceforge.net> <530CF8FF.8080600@users.sourceforge.net> <530DD06F.4090703@users.sourceforge.net> <5317A59D.4@users.sourceforge.net> <544954FD.8040607@users.sourceforge.net> <20141029084702.GA18675@kroah.com> <5453CD0D.9010206@users.sourceforge.net> Message-ID: To: cocci@systeme.lip6.fr List-Id: cocci@systeme.lip6.fr On Fri, 31 Oct 2014, SF Markus Elfring wrote: > The functions kfree(), rtw_free_netdev() and vfree() test whether their > argument is NULL and then return immediately. Thus the test around the call > is not needed. > > This issue was detected by using the Coccinelle software. > > Signed-off-by: Markus Elfring > --- > drivers/staging/rtl8188eu/core/rtw_efuse.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_mlme.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_sta_mgt.c | 3 +-- > drivers/staging/rtl8188eu/core/rtw_xmit.c | 6 ++---- > drivers/staging/rtl8188eu/os_dep/usb_intf.c | 5 ++--- > 5 files changed, 7 insertions(+), 13 deletions(-) > > diff --git a/drivers/staging/rtl8188eu/core/rtw_efuse.c > b/drivers/staging/rtl8188eu/core/rtw_efuse.c > index 7006088..77f7552 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_efuse.c > +++ b/drivers/staging/rtl8188eu/core/rtw_efuse.c > @@ -212,8 +212,7 @@ efuse_phymap_to_logical(u8 *phymap, u16 _offset, u16 > _size_byte, u8 *pbuf) > exit: > kfree(efuseTbl); > > - if (eFuseWord) > - kfree(eFuseWord); > + kfree(eFuseWord); I think that this code has been updated already. It would be better to add labels so that kfree is only executed when needed. julia > } > > static void efuse_read_phymap_from_txpktbuf( > diff --git a/drivers/staging/rtl8188eu/core/rtw_mlme.c > b/drivers/staging/rtl8188eu/core/rtw_mlme.c > index 149c271..df54350 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_mlme.c > +++ b/drivers/staging/rtl8188eu/core/rtw_mlme.c > @@ -122,8 +122,7 @@ void rtw_free_mlme_priv(struct mlme_priv *pmlmepriv) > rtw_free_mlme_priv_ie_data(pmlmepriv); > > if (pmlmepriv) { > - if (pmlmepriv->free_bss_buf) > - vfree(pmlmepriv->free_bss_buf); > + vfree(pmlmepriv->free_bss_buf); > } > } > > diff --git a/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > b/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > index e1dc8fa..af1de9c 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > +++ b/drivers/staging/rtl8188eu/core/rtw_sta_mgt.c > @@ -201,8 +201,7 @@ u32 _rtw_free_sta_priv(struct sta_priv *pstapriv) > > rtw_mfree_sta_priv_lock(pstapriv); > > - if (pstapriv->pallocated_stainfo_buf) > - vfree(pstapriv->pallocated_stainfo_buf); > + vfree(pstapriv->pallocated_stainfo_buf); > } > > return _SUCCESS; > diff --git a/drivers/staging/rtl8188eu/core/rtw_xmit.c > b/drivers/staging/rtl8188eu/core/rtw_xmit.c > index 639ace0..011c9cf 100644 > --- a/drivers/staging/rtl8188eu/core/rtw_xmit.c > +++ b/drivers/staging/rtl8188eu/core/rtw_xmit.c > @@ -246,11 +246,9 @@ void _rtw_free_xmit_priv (struct xmit_priv *pxmitpriv) > pxmitbuf++; > } > > - if (pxmitpriv->pallocated_frame_buf) > - vfree(pxmitpriv->pallocated_frame_buf); > + vfree(pxmitpriv->pallocated_frame_buf); > > - if (pxmitpriv->pallocated_xmitbuf) > - vfree(pxmitpriv->pallocated_xmitbuf); > + vfree(pxmitpriv->pallocated_xmitbuf); > > /* free xmit extension buff */ > pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmit_extbuf; > diff --git a/drivers/staging/rtl8188eu/os_dep/usb_intf.c > b/drivers/staging/rtl8188eu/os_dep/usb_intf.c > index 407a318..cdb70e4 100644 > --- a/drivers/staging/rtl8188eu/os_dep/usb_intf.c > +++ b/drivers/staging/rtl8188eu/os_dep/usb_intf.c > @@ -456,7 +456,7 @@ free_adapter: > if (status != _SUCCESS) { > if (pnetdev) > rtw_free_netdev(pnetdev); > - else if (padapter) > + else > vfree(padapter); > padapter = NULL; > } > @@ -487,8 +487,7 @@ static void rtw_usb_if1_deinit(struct adapter *if1) > DBG_88E("+r871xu_dev_remove, hw_init_completed=%d\n", > if1->hw_init_completed); > rtw_free_drv_sw(if1); > - if (pnetdev) > - rtw_free_netdev(pnetdev); > + rtw_free_netdev(pnetdev); > } > > static int rtw_drv_init(struct usb_interface *pusb_intf, const struct > usb_device_id *pdid) > -- > 2.1.2 > > -- > To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in > the body of a message to majordomo at vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html >