Re: Re: Re: [PATCH] staging: rtl8712: check register_netdev() return value
From: shaojie . dong
Date: Thu Dec 10 2020 - 10:23:25 EST
Hi
I do not have rtl8712 hardware
So that I would remain this code and give up my patch
Thank you !
> -----原始邮件-----
> 发件人: "Dan Carpenter" <dan.carpenter@xxxxxxxxxx>
> 发送时间: 2020-12-10 23:16:31 (星期四)
> 收件人: shaojie.dong@xxxxxxxxxxxxxxxx
> 抄送: Larry.Finger@xxxxxxxxxxxx, florian.c.schilhabel@xxxxxxxxxxxxxx, gregkh@xxxxxxxxxxxxxxxxxxx, devel@xxxxxxxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx
> 主题: Re: Re: [PATCH] staging: rtl8712: check register_netdev() return value
>
> On Thu, Dec 10, 2020 at 11:05:34PM +0800, shaojie.dong@xxxxxxxxxxxxxxxx wrote:
> > Hi
> >
> > >
> > > This function should not be calling register_netdev(). What does that
> > > have to do with firmware? It should also not free_netdev() because
> > > that will just lead to a use after free in the caller.
> > >
> >
> > --> check code history author<larry.finger@xxxxxxxxxxxx> changed synchronous firmware loading to asynchronous firmware loading
> > before this change, register_netdev() was not calling in firmware related function.
> > For asynchronous loading, maybe register_netdev() be calling in rtl871x_load_fw_cb() is to ensure the netdev be registered after firmware loading completed
> >
> > --> for potential use after free issue
> > Could I only call "free_irq(adapter->pnetdev->irq, adapter->pnetdev)" when register_netdev() failed ?
> > If no need to change drivers/staging/rtl8712/hal_init.c file, I could give up my patch, thank you !
> >
>
> Cleaning this up is a bit complicated and requires reworking the
> firmware loading and it requires testing. I don't think you have the
> hardware to actually test this driver? Probably, just leave this code
> for another day.
>
> regards,
> dan carpenter
</larry.finger@xxxxxxxxxxxx></dan.carpenter@xxxxxxxxxx>