On Wed, Apr 16, 2025 at 05:16:15AM +0000, Wei Fang wrote:
> > -----Original Message-----
> > From: Jakub Kicinski <k...@kernel.org>
> > Sent: 2025年4月16日 11:43
> > To: Wei Fang <wei.f...@nxp.com>
> > Cc: Claudiu Manoil <claudiu.man...@nxp.com>; Vladimir Oltean
> > <vladimir.olt...@nxp.com>; Clark Wang <xiaoning.w...@nxp.com>;
> > andrew+net...@lunn.ch; da...@davemloft.net; eduma...@google.com;
> > pab...@redhat.com; christophe.le...@csgroup.eu; net...@vger.kernel.org;
> > linux-ker...@vger.kernel.org; i...@lists.linux.dev; 
> > linuxppc-dev@lists.ozlabs.org;
> > linux-arm-ker...@lists.infradead.org
> > Subject: Re: [PATCH v5 net-next 04/14] net: enetc: add MAC filtering for 
> > i.MX95
> > ENETC PF
> > 
> > On Fri, 11 Apr 2025 17:57:42 +0800 Wei Fang wrote:
> > >   enetc4_pf_netdev_destroy(si);
> > >   enetc4_pf_free(pf);
> > > + destroy_workqueue(si->workqueue);
> > 
> > I think that you need to flush or cancel the work after unregistering
> > the netdev but before freeing it? The work may access netdev after its
> > freed.
> 
> Yes, you are right, I will improve it. thanks.

I think the workqueue creation needs to be handled in
enetc4_pf_netdev_create() somewhere in between alloc_etherdev_mqs() and
register_netdev(), so that the workqueue is available as soon as the
interface is registered, but also so that the workqueue teardown takes
places naturally where Jakub indicated.

Reply via email to