[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.1802221336520.1295-100000@iolanthe.rowland.org>
Date: Thu, 22 Feb 2018 13:45:09 -0500 (EST)
From: Alan Stern <stern@...land.harvard.edu>
To: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
cc: Mauro Carvalho Chehab <mchehab@...pensource.com>,
Frederic Weisbecker <frederic@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
Peter Zijlstra <peterz@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>,
<linux-usb@...r.kernel.org>
Subject: Re: [RFC PATCH] usb: hcd: complete URBs in threaded-IRQ context
instead of tasklet
On Thu, 22 Feb 2018, Sebastian Andrzej Siewior wrote:
> On 2018-02-16 16:46:41 [-0500], Alan Stern wrote:
> > > The theaded interrupt runs SCHED_FIFO priority 50 by default. The only
> > > thing that can interrupt it are interrupts, a softirq (not ksoftirqd)
> > > and other tasks with a higher priority than 50.
> > > There should be no downside performance wise.
> >
> > Maybe. It would be nice to see some real measurements.
>
> I had an usb3 flash stick behind the EHCI controller which was passed
> through from the host to a kvm guest. The performance numbers in the
> guest were equal (some noise was there) with and without the patch.
> The numbers with the patch were worse if lockdep was enabled which isn't
> much of a surprise.
> If you have anything specific requirements for a measurement then please
> let me know and I see what I can do.
No, I didn't have anything more specific in mind.
In principle then, using threaded-interrupt bottom halves instead of
tasklets should be fine. I don't object to making such a change.
However, using a work queue for root-hub URBs is pretty ugly. It would
be better to reinstate the code that dropped hcd_root_hub_lock around
root-hub givebacks, which was removed by commit 94dfd7edfd5c ("USB:
HCD: support giveback of URB in tasklet context"); then it would be
safe to give back those URBs in the bottom half.
Alan Stern
Powered by blists - more mailing lists