[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAK8P3a314SxhTNy6psYr_MzarOPmkjv1_KKGdeVUPpBjVkC5nA@mail.gmail.com>
Date: Tue, 31 May 2022 21:27:35 +0200
From: Arnd Bergmann <arnd@...db.de>
To: Allen Pais <apais@...ux.microsoft.com>
Cc: Arnd Bergmann <arnd@...db.de>, Vinod Koul <vkoul@...nel.org>,
Linus Walleij <linus.walleij@...aro.org>,
Vincent Guittot <vincent.guittot@...aro.org>,
olivier.dautricourt@...lia.com, Stefan Roese <sr@...x.de>,
Kees Cook <keescook@...omium.org>,
linux-hardening@...r.kernel.org,
Ludovic Desroches <ludovic.desroches@...rochip.com>,
Tudor Ambarus <tudor.ambarus@...rochip.com>,
Florian Fainelli <f.fainelli@...il.com>,
Ray Jui <rjui@...adcom.com>,
Scott Branden <sbranden@...adcom.com>,
bcm-kernel-feedback-list <bcm-kernel-feedback-list@...adcom.com>,
Nicolas Saenz Julienne <nsaenz@...nel.org>,
Paul Cercueil <paul@...pouillou.net>,
Eugeniy.Paltsev@...opsys.com,
Gustavo Pimentel <gustavo.pimentel@...opsys.com>,
Viresh Kumar <vireshk@...nel.org>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Leo Li <leoyang.li@....com>, zw@...kernel.org,
Zhou Wang <wangzhou1@...ilicon.com>,
Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Sean Wang <sean.wang@...iatek.com>,
Matthias Brugger <matthias.bgg@...il.com>,
Andreas Färber <afaerber@...e.de>,
Manivannan Sadhasivam <mani@...nel.org>,
Logan Gunthorpe <logang@...tatee.com>,
Sanjay R Mehta <sanju.mehta@....com>,
Daniel Mack <daniel@...que.org>,
Haojian Zhuang <haojian.zhuang@...il.com>,
Robert Jarzmik <robert.jarzmik@...e.fr>,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>,
green.wan@...ive.com, Orson Zhai <orsonzhai@...il.com>,
Baolin Wang <baolin.wang7@...il.com>,
Lyra Zhang <zhang.lyra@...il.com>,
Patrice CHOTARD <patrice.chotard@...s.st.com>,
Chen-Yu Tsai <wens@...e.org>,
Jernej Škrabec <jernej.skrabec@...il.com>,
Samuel Holland <samuel@...lland.org>,
dmaengine@...r.kernel.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [RFC 1/1] drivers/dma/*: replace tasklets with workqueue
On Tue, May 31, 2022 at 8:19 PM Allen Pais <apais@...ux.microsoft.com> wrote:
> >>> That is a good idea, lot of drivers are waiting for completion which can
> >>> be signalled from hardirq, this would also reduce the hops we have and
> >>> help improve latency a bit. On the downside, some controllers provide
> >>> error information, which would need to be dealt with.
> >>
> >>
> >> I am not an expert in dma subsystem, but by using completion from
> >> Hardirq context be a concern? Especially with latency.
> >
> > I don't see how: to the task waiting for the completion, there should
> > be no difference, and for the irq handler sending it, it just avoids
> > a few cycles going into softirq context.
>
> Thanks for clarification.
>
> If I have understood it correctly, your suggestion is to move the current
> Callback mechanism out to dmaengine as a generic helper function
> And introduce completion in dma_async_tx_descriptor to handle what
> Tasklets currently do.
Right: around half the callbacks are a trivial version that does nothing
other than calling complete(), so these will benefit from skipping the
softirq, while the others still need the callback.
Arnd
Powered by blists - more mailing lists