Re: [PATCH] staging: rtl8712: Fix pointer dereferenced before checking

From: Greg Kroah-Hartman
Date: Mon May 30 2022 - 04:15:47 EST


On Mon, May 30, 2022 at 04:05:32PM +0800, Haowen Bai wrote:
> The padapter->recvpriv.signal_qual_data is dereferencing before null
> checking, so move it after checking.
>
> Signed-off-by: Haowen Bai <baihaowen@xxxxxxxxx>
> ---
> drivers/staging/rtl8712/rtl8712_recv.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/staging/rtl8712/rtl8712_recv.c b/drivers/staging/rtl8712/rtl8712_recv.c
> index 7f1fdd058551..8ed94b259dbe 100644
> --- a/drivers/staging/rtl8712/rtl8712_recv.c
> +++ b/drivers/staging/rtl8712/rtl8712_recv.c
> @@ -863,10 +863,12 @@ static void process_link_qual(struct _adapter *padapter,
> {
> u32 last_evm = 0, tmpVal;
> struct rx_pkt_attrib *pattrib;
> - struct smooth_rssi_data *sqd = &padapter->recvpriv.signal_qual_data;
> + struct smooth_rssi_data *sqd;
>
> if (!prframe || !padapter)
> return;
> +
> + sqd = &padapter->recvpriv.signal_qual_data;

How can padapter ever be NULL in this codepath?

thanks,

greg k-h