[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <053701dac901$2e068360$8a138a20$@trustnetic.com>
Date: Fri, 28 Jun 2024 10:16:26 +0800
From: Jiawen Wu <jiawenwu@...stnetic.com>
To: "'Jakub Kicinski'" <kuba@...nel.org>
Cc: <davem@...emloft.net>,
<edumazet@...gle.com>,
<pabeni@...hat.com>,
<horms@...nel.org>,
<andrew@...n.ch>,
<netdev@...r.kernel.org>,
<przemyslaw.kitszel@...el.com>,
<mengyuanlou@...-swift.com>,
<duanqiangwen@...-swift.com>
Subject: RE: [PATCH net v2 2/2] net/txgbe: add extra handle for MSI/INTx into thread irq handle
On Fri, Jun 28, 2024 7:44 AM, Jakub Kicinski wrote:
> On Wed, 26 Jun 2024 14:07:03 +0800 Jiawen Wu wrote:
> > Moreover, do not free isb resources in .ndo_stop, to avoid reading
> > memory by a null pointer.
>
> Please provide more detail on the sequence of events leading to the
> null-defer.
>
> > pdev->irq = pci_irq_vector(pdev, 0);
> > + wx->num_q_vectors = 1;
>
> this doesn't seem obviously related
Umm, this is related another fix for MSI/INTx. I'll split it into a separate
commit.
>
> >
> > return 0;
> > }
> > @@ -2027,6 +2028,9 @@ int wx_setup_isb_resources(struct wx *wx)
> > {
> > struct pci_dev *pdev = wx->pdev;
> >
> > + if (wx->isb_mem)
> > + return 0;
> > +
> > wx->isb_mem = dma_alloc_coherent(&pdev->dev,
> > sizeof(u32) * 4,
> > &wx->isb_dma,
> > @@ -2050,6 +2054,9 @@ void wx_free_isb_resources(struct wx *wx)
> > {
> > struct pci_dev *pdev = wx->pdev;
> >
> > + if (!wx->isb_mem)
> > + return;
> > +
>
> And neither does this. Why do you need to make these function
> idempotent?
This is also to implement txgbe changes without changing the flow of ngbe.
Powered by blists - more mailing lists