From: Tejun Heo <tj@kernel.org>
To: Alexander Gordeev <agordeev@redhat.com>
Cc: linux-kernel@vger.kernel.org, linux-ide@vger.kernel.org
Subject: Re: [PATCH RESEND v3 5/6] AHCI: Optimize single IRQ interrupt processing
Date: Wed, 24 Sep 2014 09:04:44 -0400 [thread overview]
Message-ID: <20140924130444.GA16555@htj.dyndns.org> (raw)
In-Reply-To: <20140924104213.GA2695@agordeev.usersys.redhat.com>
Hello, Alexander.
On Wed, Sep 24, 2014 at 11:42:15AM +0100, Alexander Gordeev wrote:
> On Tue, Sep 23, 2014 at 04:57:10PM -0400, Tejun Heo wrote:
> > Hmmm... how does it affect single device operation tho? It does make
> > individual interrupt handling heavier, no?
>
> I think it is difficult to assess "individual interrupt handling", since
> it depends from both the hardware and device access pattern. On the system
> I use the results are rather counter-intuitive: ahci_thread_fn() does not
> show up in perf report at all, nor ahci_single_irq_intr(). While before
> the change ahci_single_irq_intr() reported 0.00%.
>
> But since the handling is split in two parts it is rather incorrect to
> apply the same metric to the threaded context. Obviously, the threaded
> handler is expected slowed down by other interrupts handlers, but the
> whole system should benefit from it, which is exactly the aim of this
> change.
Hmmm, how would the whole system benefit from it if there's only
single device? Each individual servicing of the interrupt does more
now which includes scheduling which may end up adding to completion
latency.
The thing I don't get is why multiple MSI handling and this patchset
are tied to threaded interrupt handling. Splitting locks don't
necessarily have much to do with threaded handling and it's not like
ahci interrupt handling is heavy. The hot path is pretty short
actually. The meat of the work - completing requests and propagating
completions - is offloaded to softirq by block layer anyway.
Just to be clear, I'm not against the proposed changes but wanna
understand the justifications behind them.
Thanks.
--
tejun
next prev parent reply other threads:[~2014-09-24 13:04 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-21 13:19 [PATCH RESEND v3 0/6] AHCI: Optimize interrupt processing Alexander Gordeev
2014-09-21 13:19 ` [PATCH RESEND v3 1/6] AHCI: Cleanup checking of multiple MSIs/SLM modes Alexander Gordeev
2014-09-23 20:18 ` Tejun Heo
2014-09-21 13:19 ` [PATCH RESEND v3 2/6] AHCI: Move host activation code into ahci_host_activate() Alexander Gordeev
2014-09-23 20:22 ` Tejun Heo
2014-09-23 20:55 ` Tejun Heo
2014-09-21 13:19 ` [PATCH RESEND v3 3/6] AHCI: Make few function names more descriptive Alexander Gordeev
2014-09-23 20:22 ` Tejun Heo
2014-09-21 13:19 ` [PATCH RESEND v3 4/6] AHCI: Get rid of redundant arg to ahci_handle_port_interrupt() Alexander Gordeev
2014-09-21 13:19 ` [PATCH RESEND v3 5/6] AHCI: Optimize single IRQ interrupt processing Alexander Gordeev
2014-09-23 20:57 ` Tejun Heo
2014-09-24 10:42 ` Alexander Gordeev
2014-09-24 13:04 ` Tejun Heo [this message]
2014-09-24 13:27 ` Chuck Ebbert
2014-09-24 13:36 ` Tejun Heo
2014-09-24 14:08 ` Alexander Gordeev
2014-09-24 14:39 ` Tejun Heo
2014-09-24 14:59 ` Alexander Gordeev
2014-09-25 3:27 ` Tejun Heo
2014-10-01 15:31 ` Alexander Gordeev
2014-10-01 15:39 ` Alexander Gordeev
2014-10-05 2:23 ` Tejun Heo
2014-10-05 16:16 ` Tejun Heo
2014-10-06 7:27 ` Alexander Gordeev
2014-10-06 12:58 ` Tejun Heo
2014-10-06 13:24 ` Alexander Gordeev
2014-10-06 14:54 ` Tejun Heo
2014-09-25 3:00 ` Elliott, Robert (Server Storage)
2014-09-21 13:19 ` [PATCH RESEND v3 6/6] AHCI: Do not read HOST_IRQ_STAT reg in multi-MSI mode Alexander Gordeev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140924130444.GA16555@htj.dyndns.org \
--to=tj@kernel.org \
--cc=agordeev@redhat.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).