On Mon, Aug 02, 2021 at 02:27:17PM -0500, Larry Finger wrote: > This call is so simple that there is no need, or use, for a wrapper. > Except the wrapper was presumably there to map generic code to Linux code, and the patch doesn't add an include <linux/vmalloc.h> anywhere. This results in widespread build errrors such as drivers/staging/r8188eu/core/rtw_mlme.c: In function '_rtw_free_mlme_priv': drivers/staging/r8188eu/core/rtw_mlme.c:129:17: error: implicit declaration of function 'vfree' for all architectures where <linux/vmalloc.h> isn't included indirectly. Guenter > Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx> > --- > v2 - no change > --- > drivers/staging/r8188eu/core/rtw_mlme.c | 4 +--- > drivers/staging/r8188eu/core/rtw_mp.c | 3 +-- > drivers/staging/r8188eu/core/rtw_recv.c | 5 +---- > drivers/staging/r8188eu/core/rtw_sta_mgt.c | 2 +- > drivers/staging/r8188eu/core/rtw_xmit.c | 10 +++------- > drivers/staging/r8188eu/hal/odm_interface.c | 2 +- > drivers/staging/r8188eu/hal/rtl8188e_hal_init.c | 2 +- > drivers/staging/r8188eu/include/osdep_service.h | 2 -- > drivers/staging/r8188eu/os_dep/ioctl_linux.c | 4 ++-- > drivers/staging/r8188eu/os_dep/osdep_service.c | 7 +------ > drivers/staging/r8188eu/os_dep/usb_intf.c | 2 +- > 11 files changed, 13 insertions(+), 30 deletions(-) > > diff --git a/drivers/staging/r8188eu/core/rtw_mlme.c b/drivers/staging/r8188eu/core/rtw_mlme.c > index 3a83cf9731a0..c3763d9e448a 100644 > --- a/drivers/staging/r8188eu/core/rtw_mlme.c > +++ b/drivers/staging/r8188eu/core/rtw_mlme.c > @@ -129,9 +129,7 @@ void _rtw_free_mlme_priv (struct mlme_priv *pmlmepriv) > if (pmlmepriv) { > rtw_mfree_mlme_priv_lock (pmlmepriv); > > - if (pmlmepriv->free_bss_buf) { > - rtw_vmfree(pmlmepriv->free_bss_buf, MAX_BSS_CNT * sizeof(struct wlan_network)); > - } > + vfree(pmlmepriv->free_bss_buf); > } > > } > diff --git a/drivers/staging/r8188eu/core/rtw_mp.c b/drivers/staging/r8188eu/core/rtw_mp.c > index a12c6e0ad002..c579f2e2fd62 100644 > --- a/drivers/staging/r8188eu/core/rtw_mp.c > +++ b/drivers/staging/r8188eu/core/rtw_mp.c > @@ -922,8 +922,7 @@ void _rtw_mp_xmit_priv(struct xmit_priv *pxmitpriv) > pxmitbuf++; > } > > - if (pxmitpriv->pallocated_xmit_extbuf) > - rtw_vmfree(pxmitpriv->pallocated_xmit_extbuf, num_xmit_extbuf * sizeof(struct xmit_buf) + 4); > + vfree(pxmitpriv->pallocated_xmit_extbuf); > > if (padapter->registrypriv.mp_mode == 0) { > max_xmit_extbuf_size = 6000; > diff --git a/drivers/staging/r8188eu/core/rtw_recv.c b/drivers/staging/r8188eu/core/rtw_recv.c > index 610cc699caf9..08e095cd08b8 100644 > --- a/drivers/staging/r8188eu/core/rtw_recv.c > +++ b/drivers/staging/r8188eu/core/rtw_recv.c > @@ -115,12 +115,9 @@ void _rtw_free_recv_priv (struct recv_priv *precvpriv) > > rtw_os_recv_resource_free(precvpriv); > > - if (precvpriv->pallocated_frame_buf) { > - rtw_vmfree(precvpriv->pallocated_frame_buf, NR_RECVFRAME * sizeof(struct recv_frame) + RXFRAME_ALIGN_SZ); > - } > + vfree(precvpriv->pallocated_frame_buf); > > rtw_hal_free_recv_priv(padapter); > - > } > > struct recv_frame *_rtw_alloc_recvframe (struct __queue *pfree_recv_queue) > diff --git a/drivers/staging/r8188eu/core/rtw_sta_mgt.c b/drivers/staging/r8188eu/core/rtw_sta_mgt.c > index feaf39fddf7c..3b1a6a689d95 100644 > --- a/drivers/staging/r8188eu/core/rtw_sta_mgt.c > +++ b/drivers/staging/r8188eu/core/rtw_sta_mgt.c > @@ -233,7 +233,7 @@ u32 _rtw_free_sta_priv(struct sta_priv *pstapriv) > rtw_mfree_sta_priv_lock(pstapriv); > > if (pstapriv->pallocated_stainfo_buf) > - rtw_vmfree(pstapriv->pallocated_stainfo_buf, sizeof(struct sta_info)*NUM_STA+4); > + vfree(pstapriv->pallocated_stainfo_buf); > } > > return _SUCCESS; > diff --git a/drivers/staging/r8188eu/core/rtw_xmit.c b/drivers/staging/r8188eu/core/rtw_xmit.c > index 408d2b9955b9..87aa45c0305a 100644 > --- a/drivers/staging/r8188eu/core/rtw_xmit.c > +++ b/drivers/staging/r8188eu/core/rtw_xmit.c > @@ -252,11 +252,9 @@ void _rtw_free_xmit_priv (struct xmit_priv *pxmitpriv) > pxmitbuf++; > } > > - if (pxmitpriv->pallocated_frame_buf) > - rtw_vmfree(pxmitpriv->pallocated_frame_buf, NR_XMITFRAME * sizeof(struct xmit_frame) + 4); > + vfree(pxmitpriv->pallocated_frame_buf); > > - if (pxmitpriv->pallocated_xmitbuf) > - rtw_vmfree(pxmitpriv->pallocated_xmitbuf, NR_XMITBUFF * sizeof(struct xmit_buf) + 4); > + vfree(pxmitpriv->pallocated_xmitbuf); > > /* free xmit extension buff */ > _rtw_spinlock_free(&pxmitpriv->free_xmit_extbuf_queue.lock); > @@ -267,9 +265,7 @@ void _rtw_free_xmit_priv (struct xmit_priv *pxmitpriv) > pxmitbuf++; > } > > - if (pxmitpriv->pallocated_xmit_extbuf) { > - rtw_vmfree(pxmitpriv->pallocated_xmit_extbuf, num_xmit_extbuf * sizeof(struct xmit_buf) + 4); > - } > + vfree(pxmitpriv->pallocated_xmit_extbuf); > > rtw_free_hwxmits(padapter); > > diff --git a/drivers/staging/r8188eu/hal/odm_interface.c b/drivers/staging/r8188eu/hal/odm_interface.c > index 507baf9fd913..38f6ae410e53 100644 > --- a/drivers/staging/r8188eu/hal/odm_interface.c > +++ b/drivers/staging/r8188eu/hal/odm_interface.c > @@ -85,7 +85,7 @@ void ODM_AllocateMemory(struct odm_dm_struct *pDM_Odm, void **pPtr, u32 length) > /* length could be ignored, used to detect memory leakage. */ > void ODM_FreeMemory(struct odm_dm_struct *pDM_Odm, void *pPtr, u32 length) > { > - rtw_vmfree(pPtr, length); > + vfree(pPtr); > } > > s32 ODM_CompareMemory(struct odm_dm_struct *pDM_Odm, void *pBuf1, void *pBuf2, u32 length) > diff --git a/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c b/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c > index 62d8a7ca3a9a..a8e2081f3540 100644 > --- a/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c > +++ b/drivers/staging/r8188eu/hal/rtl8188e_hal_init.c > @@ -363,7 +363,7 @@ void rtw_IOL_cmd_tx_pkt_buf_dump(struct adapter *Adapter, int data_len) > } while (!rstatus && (loop++ < 10)); > } > rtw_IOL_cmd_buf_dump(Adapter, data_len, pbuf); > - rtw_vmfree(pbuf, data_len+10); > + vfree(pbuf); > } > DBG_88E("###### %s ######\n", __func__); > } > diff --git a/drivers/staging/r8188eu/include/osdep_service.h b/drivers/staging/r8188eu/include/osdep_service.h > index 4575f5da5f70..446f43ac08d3 100644 > --- a/drivers/staging/r8188eu/include/osdep_service.h > +++ b/drivers/staging/r8188eu/include/osdep_service.h > @@ -214,10 +214,8 @@ extern unsigned char RSN_TKIP_CIPHER[4]; > #define rtw_update_mem_stat(flag, sz) do {} while (0) > u8 *_rtw_vmalloc(u32 sz); > u8 *_rtw_zvmalloc(u32 sz); > -void _rtw_vmfree(u8 *pbuf, u32 sz); > #define rtw_vmalloc(sz) _rtw_vmalloc((sz)) > #define rtw_zvmalloc(sz) _rtw_zvmalloc((sz)) > -#define rtw_vmfree(pbuf, sz) _rtw_vmfree((pbuf), (sz)) > > void *rtw_malloc2d(int h, int w, int size); > > diff --git a/drivers/staging/r8188eu/os_dep/ioctl_linux.c b/drivers/staging/r8188eu/os_dep/ioctl_linux.c > index 5f4355cb03e7..11301e0f287a 100644 > --- a/drivers/staging/r8188eu/os_dep/ioctl_linux.c > +++ b/drivers/staging/r8188eu/os_dep/ioctl_linux.c > @@ -5575,7 +5575,7 @@ static int rtw_wx_set_priv(struct net_device *dev, > return -ENOMEM; > > if (copy_from_user(ext, dwrq->pointer, len)) { > - rtw_vmfree(ext, len); > + vfree(ext); > return -EFAULT; > } > > @@ -5614,7 +5614,7 @@ static int rtw_wx_set_priv(struct net_device *dev, > > FREE_EXT: > > - rtw_vmfree(ext, len); > + vfree(ext); > > return ret; > } > diff --git a/drivers/staging/r8188eu/os_dep/osdep_service.c b/drivers/staging/r8188eu/os_dep/osdep_service.c > index 8d89b98545cf..ec877615bdf7 100644 > --- a/drivers/staging/r8188eu/os_dep/osdep_service.c > +++ b/drivers/staging/r8188eu/os_dep/osdep_service.c > @@ -53,11 +53,6 @@ inline u8 *_rtw_zvmalloc(u32 sz) > return pbuf; > } > > -inline void _rtw_vmfree(u8 *pbuf, u32 sz) > -{ > - vfree(pbuf); > -} > - > void *rtw_malloc2d(int h, int w, int size) > { > int j; > @@ -296,7 +291,7 @@ void rtw_free_netdev(struct net_device *netdev) > if (!pnpi->priv) > goto RETURN; > > - rtw_vmfree(pnpi->priv, pnpi->sizeof_priv); > + vfree(pnpi->priv); > free_netdev(netdev); > > RETURN: > diff --git a/drivers/staging/r8188eu/os_dep/usb_intf.c b/drivers/staging/r8188eu/os_dep/usb_intf.c > index 270de35f1d35..2c372c9ad7e7 100644 > --- a/drivers/staging/r8188eu/os_dep/usb_intf.c > +++ b/drivers/staging/r8188eu/os_dep/usb_intf.c > @@ -702,7 +702,7 @@ static struct adapter *rtw_usb_if1_init(struct dvobj_priv *dvobj, > if (pnetdev) > rtw_free_netdev(pnetdev); > else if (padapter) > - rtw_vmfree((u8 *)padapter, sizeof(*padapter)); > + vfree(padapter); > padapter = NULL; > } > exit: