[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YfJcDfkBZfeYA1Z/@unreal>
Date: Thu, 27 Jan 2022 10:47:09 +0200
From: Leon Romanovsky <leon@...nel.org>
To: Tony Lu <tonylu@...ux.alibaba.com>
Cc: Jason Gunthorpe <jgg@...pe.ca>, kgraul@...ux.ibm.com,
kuba@...nel.org, davem@...emloft.net, netdev@...r.kernel.org,
linux-s390@...r.kernel.org,
RDMA mailing list <linux-rdma@...r.kernel.org>
Subject: Re: [RFC PATCH net-next 0/6] net/smc: Spread workload over multiple
cores
On Thu, Jan 27, 2022 at 03:59:36PM +0800, Tony Lu wrote:
> On Thu, Jan 27, 2022 at 08:21:07AM +0200, Leon Romanovsky wrote:
> > On Thu, Jan 27, 2022 at 11:14:37AM +0800, Tony Lu wrote:
> > > On Wed, Jan 26, 2022 at 11:28:06AM -0400, Jason Gunthorpe wrote:
> > > > On Wed, Jan 26, 2022 at 03:23:22PM +0800, Tony Lu wrote:
> > > > > On Sun, Jan 16, 2022 at 11:00:33AM +0200, Leon Romanovsky wrote:
> > > > > >
> > > > > > Please CC RDMA mailing list next time.
> > > > > >
> > > > > > Why didn't you use already existed APIs in drivers/infiniband/core/cq.c?
> > > > > > ib_cq_pool_get() will do most if not all of your open-coded CQ spreading
> > > > > > logic.
> > > > >
> > > > > I am working on replacing with ib_cq_pool_get(), this need ib_poll_context
> > > > > to indicate the poller which provides by ib_poll_handler(). It's okay
> > > > > for now, but for the callback function. When it polled a ib_wc, it
> > > > > would call wc->wr_cqe->done(cq, wc), which is the union with wr_id. The
> > > > > wr_id is heavily used in SMC.
> > > >
> > > > Part of using the new interface is converting to use wr_cqe, you
> > > > should just do that work instead of trying to duplicate a core API in
> > > > a driver.
> > >
> > > Thanks for your advice. This patch set aims to improve performance with
> > > current API in SMC protocol, which is more urgent.
> >
> > This code existed from 2017, it is hard to agree with "urgent" claim.
>
> Yes, I agree with you that the code is old. I think there are two
> problems, one for performance issue, the other one for API refactor.
>
> We are running into the performance issues mentioned in patches in our
> cloud environment. So I think it is more urgent for a real world issue.
>
> The current modification is less intrusive to the code. This makes
> changes simpler. And current implement works for now, this is why I put
> refactor behind.
We are not requesting to refactor the code, but properly use existing
in-kernel API, while implementing new feature ("Spread workload over
multiple cores").
Thanks
>
> Thank you,
> Tony Lu
Powered by blists - more mailing lists