All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Brown <broonie@kernel.org>
To: Robin Murphy <robin.murphy@arm.com>
Cc: Florian Fainelli <f.fainelli@gmail.com>,
	lukas@wunner.de,
	"moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE" 
	<linux-arm-kernel@lists.infradead.org>,
	"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" 
	<devicetree@vger.kernel.org>,
	Scott Branden <sbranden@broadcom.com>,
	Ray Jui <rjui@broadcom.com>,
	linux-kernel@vger.kernel.org,
	"open list:SPI SUBSYSTEM" <linux-spi@vger.kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	"maintainer:BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITE..." 
	<bcm-kernel-feedback-list@broadcom.com>,
	"moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE" 
	<linux-rpi-kernel@lists.infradead.org>,
	Martin Sperl <kernel@martin.sperl.org>,
	Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Subject: Re: [PATCH v2] spi: bcm2835: Enable shared interrupt support
Date: Mon, 8 Jun 2020 12:28:40 +0100	[thread overview]
Message-ID: <20200608112840.GC4593@sirena.org.uk> (raw)
In-Reply-To: <a6f158e3-af51-01d9-331c-4bc8b6847abb@arm.com>

[-- Attachment #1: Type: text/plain, Size: 958 bytes --]

On Mon, Jun 08, 2020 at 12:11:11PM +0100, Robin Murphy wrote:

> Again, 2 cycles. The overhead of a static key alone is at least 50% of that.
> And that's not even considering whether the change in code layout caused by
> doubling up the IRQ handler might affect I-cache or branch predictor
> behaviour, where a single miss stands to more than wipe out any perceived
> saving. And all in code that has at least one obvious inefficiency left on
> the table either way.

> This thread truly epitomises Knuth's "premature optimisation" quote... ;)

In fairness the main reason this driver is so heavily tuned already (and
has lead to some really nice improvements in the core) is that there are
a number of users hitting 100% CPU utilization driving SPI devices on
some of the older RPi hardware, IIRC around IIO type applications
mostly.  I do tend to agree that this particular optimization is a bit
marginal but there has been a lot of effort put into this.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: Mark Brown <broonie@kernel.org>
To: Robin Murphy <robin.murphy@arm.com>
Cc: "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
	<devicetree@vger.kernel.org>,
	Florian Fainelli <f.fainelli@gmail.com>,
	Scott Branden <sbranden@broadcom.com>,
	Ray Jui <rjui@broadcom.com>,
	linux-kernel@vger.kernel.org, Rob Herring <robh+dt@kernel.org>,
	"open list:SPI SUBSYSTEM" <linux-spi@vger.kernel.org>,
	Nicolas Saenz Julienne <nsaenzjulienne@suse.de>,
	lukas@wunner.de,
	"maintainer:BROADCOM BCM281XX/BCM11XXX/BCM216XX ARM ARCHITE..."
	<bcm-kernel-feedback-list@broadcom.com>,
	"moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE"
	<linux-rpi-kernel@lists.infradead.org>,
	Martin Sperl <kernel@martin.sperl.org>,
	"moderated list:BROADCOM BCM2711/BCM2835 ARM ARCHITECTURE"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v2] spi: bcm2835: Enable shared interrupt support
Date: Mon, 8 Jun 2020 12:28:40 +0100	[thread overview]
Message-ID: <20200608112840.GC4593@sirena.org.uk> (raw)
In-Reply-To: <a6f158e3-af51-01d9-331c-4bc8b6847abb@arm.com>


[-- Attachment #1.1: Type: text/plain, Size: 958 bytes --]

On Mon, Jun 08, 2020 at 12:11:11PM +0100, Robin Murphy wrote:

> Again, 2 cycles. The overhead of a static key alone is at least 50% of that.
> And that's not even considering whether the change in code layout caused by
> doubling up the IRQ handler might affect I-cache or branch predictor
> behaviour, where a single miss stands to more than wipe out any perceived
> saving. And all in code that has at least one obvious inefficiency left on
> the table either way.

> This thread truly epitomises Knuth's "premature optimisation" quote... ;)

In fairness the main reason this driver is so heavily tuned already (and
has lead to some really nice improvements in the core) is that there are
a number of users hitting 100% CPU utilization driving SPI devices on
some of the older RPi hardware, IIRC around IIO type applications
mostly.  I do tend to agree that this particular optimization is a bit
marginal but there has been a lot of effort put into this.

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

[-- Attachment #2: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2020-06-08 11:28 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-04 21:28 [PATCH v2] spi: bcm2835: Enable shared interrupt support Florian Fainelli
2020-06-04 21:28 ` Florian Fainelli
2020-06-05  8:46 ` Nicolas Saenz Julienne
2020-06-05  8:46   ` Nicolas Saenz Julienne
2020-06-05 10:52   ` Mark Brown
2020-06-05 10:52     ` Mark Brown
2020-06-05 10:58   ` Nicolas Saenz Julienne
2020-06-05 10:58     ` Nicolas Saenz Julienne
2020-06-05 10:51 ` Lukas Wunner
2020-06-05 11:14 ` Mark Brown
2020-06-05 11:14   ` Mark Brown
2020-06-05 12:20   ` Mark Brown
2020-06-05 12:20     ` Mark Brown
2020-06-05 11:34 ` Robin Murphy
2020-06-05 11:34   ` Robin Murphy
2020-06-05 13:20   ` Mark Brown
2020-06-05 13:20     ` Mark Brown
2020-06-05 13:46     ` Robin Murphy
2020-06-05 13:46       ` Robin Murphy
2020-06-05 14:41       ` Robin Murphy
2020-06-05 14:41         ` Robin Murphy
2020-06-05 15:27         ` Mark Brown
2020-06-05 15:27           ` Mark Brown
2020-06-05 22:04         ` Florian Fainelli
2020-06-05 22:04           ` Florian Fainelli
2020-06-08 11:11           ` Robin Murphy
2020-06-08 11:11             ` Robin Murphy
2020-06-08 11:28             ` Mark Brown [this message]
2020-06-08 11:28               ` Mark Brown
2020-06-15 16:34               ` Florian Fainelli
2020-06-15 16:34                 ` Florian Fainelli
2020-06-15 17:00                 ` Mark Brown
2020-06-15 17:00                   ` Mark Brown
2020-06-15 17:04                   ` Florian Fainelli
2020-06-15 17:04                     ` Florian Fainelli
2020-06-15 17:30                     ` Mark Brown
2020-06-15 17:30                       ` Mark Brown
2020-06-15 17:31                     ` Robin Murphy
2020-06-15 17:31                       ` Robin Murphy
2020-06-15 19:26                       ` Mark Brown
2020-06-15 19:26                         ` Mark Brown
2020-06-08 11:41             ` Lukas Wunner
2020-06-15 19:09               ` Robin Murphy
2020-06-15 19:09                 ` Robin Murphy
2020-06-15 19:42                 ` Florian Fainelli
2020-06-15 19:42                   ` Florian Fainelli
2020-06-15 20:48                   ` Mark Brown
2020-06-15 20:48                     ` Mark Brown
  -- strict thread matches above, loose matches on Subject: below --
2022-07-19 10:53 [PATCH v2] spi: bcm2835: enable " Marc Kleine-Budde
2022-07-26 11:17 ` Mark Brown

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=20200608112840.GC4593@sirena.org.uk \
    --to=broonie@kernel.org \
    --cc=bcm-kernel-feedback-list@broadcom.com \
    --cc=devicetree@vger.kernel.org \
    --cc=f.fainelli@gmail.com \
    --cc=kernel@martin.sperl.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rpi-kernel@lists.infradead.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=lukas@wunner.de \
    --cc=nsaenzjulienne@suse.de \
    --cc=rjui@broadcom.com \
    --cc=robh+dt@kernel.org \
    --cc=robin.murphy@arm.com \
    --cc=sbranden@broadcom.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.