drivers/staging/r8188eu/core/rtw_xmit.c | 7 +++++++ 1 file changed, 7 insertions(+)
As kzalloc may return null pointer, it should be better to
check the return value in order to avoid dereference of
null pointer.
Moreover, the "padapter->xmitpriv.hwxmits" should also be
checked and return _FAIL if it is null.
Fixes: 15865124feed ("staging: r8188eu: introduce new core dir for RTL8188eu driver")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
---
drivers/staging/r8188eu/core/rtw_xmit.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/drivers/staging/r8188eu/core/rtw_xmit.c b/drivers/staging/r8188eu/core/rtw_xmit.c
index c2a550e7250e..f47d2bf71a45 100644
--- a/drivers/staging/r8188eu/core/rtw_xmit.c
+++ b/drivers/staging/r8188eu/core/rtw_xmit.c
@@ -179,6 +179,11 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, struct adapter *padapter)
pxmitpriv->free_xmit_extbuf_cnt = num_xmit_extbuf;
rtw_alloc_hwxmits(padapter);
+ if (!padapter->xmitpriv.hwxmits) {
+ res = _FAIL;
+ goto exit;
+ }
+
rtw_init_hwxmits(pxmitpriv->hwxmits, pxmitpriv->hwxmit_entry);
for (i = 0; i < 4; i++)
@@ -1482,6 +1487,8 @@ void rtw_alloc_hwxmits(struct adapter *padapter)
pxmitpriv->hwxmit_entry = HWXMIT_ENTRY;
pxmitpriv->hwxmits = kzalloc(sizeof(struct hw_xmit) * pxmitpriv->hwxmit_entry, GFP_KERNEL);
+ if (!pxmitpriv->hwxmits)
+ return;
hwxmits = pxmitpriv->hwxmits;
--
2.25.1
On Wed, May 18, 2022 at 11:09:57AM +0800, Jiasheng Jiang wrote:
> As kzalloc may return null pointer, it should be better to
> check the return value in order to avoid dereference of
> null pointer.
> Moreover, the "padapter->xmitpriv.hwxmits" should also be
> checked and return _FAIL if it is null.
>
> Fixes: 15865124feed ("staging: r8188eu: introduce new core dir for RTL8188eu driver")
> Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
> ---
> drivers/staging/r8188eu/core/rtw_xmit.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/drivers/staging/r8188eu/core/rtw_xmit.c b/drivers/staging/r8188eu/core/rtw_xmit.c
> index c2a550e7250e..f47d2bf71a45 100644
> --- a/drivers/staging/r8188eu/core/rtw_xmit.c
> +++ b/drivers/staging/r8188eu/core/rtw_xmit.c
> @@ -179,6 +179,11 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, struct adapter *padapter)
> pxmitpriv->free_xmit_extbuf_cnt = num_xmit_extbuf;
>
> rtw_alloc_hwxmits(padapter);
> + if (!padapter->xmitpriv.hwxmits) {
> + res = _FAIL;
> + goto exit;
> + }
Please make rtw_alloc_hwxmits() return -ENOMEM on failure and zero on
success.
regards,
dan carpenter
© 2016 - 2026 Red Hat, Inc.