MIPS: Octeon: Remove udelay() causing huge IRQ latency
authorAlexander Sverdlin <alexander.sverdlin@nokia.com>
Wed, 18 Mar 2015 13:05:21 +0000 (14:05 +0100)
committerWilly Tarreau <w@1wt.eu>
Fri, 18 Sep 2015 11:52:06 +0000 (13:52 +0200)
commit93f44614486be7d8eb4864b51f4808fc945b69f6
tree29bfe10bdae4684e9f8d30ba273dda917577b3ee
parent8a1a5b2f86dcd4bf42f9bd26e778fb504767b051
MIPS: Octeon: Remove udelay() causing huge IRQ latency

commit 73bf3c2a500b2db8ac966469591196bf55afb409 upstream.

udelay() in PCI/PCIe read/write callbacks cause 30ms IRQ latency on Octeon
platforms because these operations are called from PCI_OP_READ() and
PCI_OP_WRITE() under raw_spin_lock_irqsave().

Signed-off-by: Alexander Sverdlin <alexander.sverdlin@nokia.com>
Cc: linux-mips@linux-mips.org
Cc: David Daney <ddaney@cavium.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Jiri Kosina <jkosina@suse.cz>
Cc: Randy Dunlap <rdunlap@infradead.org>
Cc: Masanari Iida <standby24x7@gmail.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Cc: Mathias <mathias.rulf@nokia.com>
Patchwork: https://patchwork.linux-mips.org/patch/9576/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
(cherry picked from commit 53493d44a771a3155ee12b6ac668fb2543d21a7a)

Signed-off-by: Willy Tarreau <w@1wt.eu>
arch/mips/include/asm/octeon/pci-octeon.h
arch/mips/pci/pci-octeon.c
arch/mips/pci/pcie-octeon.c