[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<PH7PR21MB3263C134979B17F1C53D3E8DCE06A@PH7PR21MB3263.namprd21.prod.outlook.com>
Date: Fri, 28 Jul 2023 17:51:46 +0000
From: Long Li <longli@...rosoft.com>
To: Jason Gunthorpe <jgg@...pe.ca>, Wei Hu <weh@...rosoft.com>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"linux-hyperv@...r.kernel.org" <linux-hyperv@...r.kernel.org>,
"linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>, Ajay Sharma
<sharmaajay@...rosoft.com>, "leon@...nel.org" <leon@...nel.org>, KY
Srinivasan <kys@...rosoft.com>, Haiyang Zhang <haiyangz@...rosoft.com>,
"wei.liu@...nel.org" <wei.liu@...nel.org>, Dexuan Cui <decui@...rosoft.com>,
"davem@...emloft.net" <davem@...emloft.net>, "edumazet@...gle.com"
<edumazet@...gle.com>, "kuba@...nel.org" <kuba@...nel.org>,
"pabeni@...hat.com" <pabeni@...hat.com>, "vkuznets@...hat.com"
<vkuznets@...hat.com>, "ssengar@...ux.microsoft.com"
<ssengar@...ux.microsoft.com>, "shradhagupta@...ux.microsoft.com"
<shradhagupta@...ux.microsoft.com>
Subject: RE: [PATCH v4 1/1] RDMA/mana_ib: Add EQ interrupt support to mana ib
driver.
> Subject: Re: [PATCH v4 1/1] RDMA/mana_ib: Add EQ interrupt support to mana ib
> driver.
>
> On Fri, Jul 28, 2023 at 05:07:49PM +0000, Wei Hu wrote:
> > Add EQ interrupt support for mana ib driver. Allocate EQs per ucontext
> > to receive interrupt. Attach EQ when CQ is created. Call CQ interrupt
> > handler when completion interrupt happens. EQs are destroyed when
> > ucontext is deallocated.
>
> It seems strange that interrupts would be somehow linked to a ucontext?
> interrupts are highly limited, you can DOS the entire system if someone abuses
> this.
>
> Generally I expect a properly functioning driver to use one interrupt per CPU core.
Yes, MANA uses one interrupt per CPU. One interrupt is shared among multiple
EQs.
>
> You should tie the CQ to a shared EQ belong to the core that the CQ wants to have
> affinity to.
The reason for using a separate EQ for a ucontext, is for preventing DOS. If we use
a shared EQ, a single ucontext can storm this shared EQ affecting other users.
If one ucontext decides to abuse its own EQ, the hardware won't be able generate
enough IRQs to storm the whole system.
Long
Powered by blists - more mailing lists