From: Yong Zhang <yong.zhang0@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: tglx@linutronix.de, Bjorn Helgaas <bhelgaas@google.com>,
Jesse Barnes <jbarnes@virtuousgeek.org>,
Randy Dunlap <rdunlap@xenotime.net>,
linux-pci@vger.kernel.org, linux-doc@vger.kernel.org
Subject: [PATCH 47/49] Documentation: irq: Change documents related to IRQF_DISABLED
Date: Sat, 22 Oct 2011 17:56:59 +0800 [thread overview]
Message-ID: <1319277421-9203-48-git-send-email-yong.zhang0@gmail.com> (raw)
In-Reply-To: <1319277421-9203-1-git-send-email-yong.zhang0@gmail.com>
IRQF_DISABLED is a NOOP now, place where suggest to use this
flag also doesn't make sense any more.
Signed-off-by: Yong Zhang <yong.zhang0@gmail.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
---
Documentation/PCI/MSI-HOWTO.txt | 21 ---------------------
Documentation/scsi/ncr53c8xx.txt | 3 ++-
Documentation/scsi/tmscsim.txt | 4 ++--
3 files changed, 4 insertions(+), 24 deletions(-)
diff --git a/Documentation/PCI/MSI-HOWTO.txt b/Documentation/PCI/MSI-HOWTO.txt
index 53e6fca..b3f514d 100644
--- a/Documentation/PCI/MSI-HOWTO.txt
+++ b/Documentation/PCI/MSI-HOWTO.txt
@@ -255,27 +255,6 @@ as many vectors for MSI as it could for MSI-X. On some platforms, MSI
interrupts must all be targeted at the same set of CPUs whereas MSI-X
interrupts can all be targeted at different CPUs.
-4.5.2 Spinlocks
-
-Most device drivers have a per-device spinlock which is taken in the
-interrupt handler. With pin-based interrupts or a single MSI, it is not
-necessary to disable interrupts (Linux guarantees the same interrupt will
-not be re-entered). If a device uses multiple interrupts, the driver
-must disable interrupts while the lock is held. If the device sends
-a different interrupt, the driver will deadlock trying to recursively
-acquire the spinlock.
-
-There are two solutions. The first is to take the lock with
-spin_lock_irqsave() or spin_lock_irq() (see
-Documentation/DocBook/kernel-locking). The second is to specify
-IRQF_DISABLED to request_irq() so that the kernel runs the entire
-interrupt routine with interrupts disabled.
-
-If your MSI interrupt routine does not hold the lock for the whole time
-it is running, the first solution may be best. The second solution is
-normally preferred as it avoids making two transitions from interrupt
-disabled to enabled and back again.
-
4.6 How to tell whether MSI/MSI-X is enabled on a device
Using 'lspci -v' (as root) may show some devices with "MSI", "Message
diff --git a/Documentation/scsi/ncr53c8xx.txt b/Documentation/scsi/ncr53c8xx.txt
index cda5f8f..6cb311b 100644
--- a/Documentation/scsi/ncr53c8xx.txt
+++ b/Documentation/scsi/ncr53c8xx.txt
@@ -786,7 +786,8 @@ port address 0x1400.
irqm:1 same as initial settings (assumed BIOS settings)
irqm:2 always totem pole
irqm:0x10 driver will not use IRQF_SHARED flag when requesting irq
- irqm:0x20 driver will not use IRQF_DISABLED flag when requesting irq
+ irqm:0x20 driver will not use IRQF_DISABLED flag when requesting
+ irq (only useful for linux-2.6.34 and earlier)
(Bits 0x10 and 0x20 can be combined with hardware irq mode option)
diff --git a/Documentation/scsi/tmscsim.txt b/Documentation/scsi/tmscsim.txt
index 61c0531..1dee219 100644
--- a/Documentation/scsi/tmscsim.txt
+++ b/Documentation/scsi/tmscsim.txt
@@ -108,8 +108,8 @@ MHz PCI bus works for me, though, but I don't recommend using higher clocks
than the 33.33 MHz being in the PCI spec.
If you want to share the IRQ with another device and the driver refuses to
-do so, you might succeed with changing the DC390_IRQ type in tmscsim.c to
-IRQF_SHARED | IRQF_DISABLED.
+do so, you should find out what's the mismatch between the shared IRQs,
+and CONFIG_DEBUG_SHIRQ may give you more help.
3.Features
--
1.7.1
next prev parent reply other threads:[~2011-10-22 10:18 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-22 9:56 [PATCH V3 00/49] Tree wide: cleanup IRQF_DISABLED Yong Zhang
2011-10-22 9:56 ` [PATCH 01/49] usb/hcd: Remove tricky code dealing with IRQF_DISABLED && IRQF_SHARED Yong Zhang
2011-10-22 9:56 ` [PATCH 02/49] alpha: irq: Remove IRQF_DISABLED Yong Zhang
2011-10-22 9:56 ` [PATCH 04/49] avr32: " Yong Zhang
2011-10-22 9:56 ` [PATCH 05/49] cris: " Yong Zhang
2011-10-22 9:56 ` [PATCH 06/49] frv: " Yong Zhang
2011-10-22 9:56 ` [PATCH 07/49] h8300: " Yong Zhang
2011-10-22 9:56 ` [PATCH 08/49] ia64: " Yong Zhang
2011-10-22 9:56 ` [PATCH 09/49] m32r: " Yong Zhang
2011-10-22 9:56 ` [PATCH 10/49] m68k: " Yong Zhang
2011-10-22 9:56 ` [PATCH 11/49] microblaze: " Yong Zhang
2011-10-22 9:56 ` [PATCH 12/49] MIPS: " Yong Zhang
2011-11-04 12:21 ` Ralf Baechle
2011-11-07 2:10 ` Yong Zhang
2011-11-07 2:49 ` Stephen Rothwell
2011-11-07 3:06 ` Yong Zhang
2011-10-22 9:56 ` [PATCH 13/49] mn10300: " Yong Zhang
2011-10-22 9:56 ` [PATCH 14/49] parisc: irq: remove IRQF_DISABLED Yong Zhang
2011-10-22 9:56 ` [PATCH 15/49] powerpc: irq: Remove IRQF_DISABLED Yong Zhang
2011-10-23 1:57 ` Geoff Levand
2011-10-22 9:56 ` [PATCH 16/49] SH: " Yong Zhang
2011-10-28 6:17 ` Paul Mundt
2011-10-22 9:56 ` [PATCH 17/49] sparc: " Yong Zhang
2011-10-22 9:56 ` [PATCH 18/49] um: " Yong Zhang
2011-10-28 10:54 ` Richard Weinberger
2011-10-28 11:51 ` Yong Zhang
2011-10-22 9:56 ` [PATCH 19/49] unicore32: " Yong Zhang
2011-10-22 9:56 ` [PATCH 20/49] x86: irq: " Yong Zhang
2011-10-22 9:56 ` [PATCH 21/49] xtensa: " Yong Zhang
2011-10-22 9:56 ` [PATCH 22/49] score: " Yong Zhang
2011-10-22 9:56 ` [PATCH 23/49] clocksource: " Yong Zhang
2011-10-22 9:56 ` [PATCH 24/49] SCSI: " Yong Zhang
2011-10-22 9:56 ` [PATCH 25/49] block: " Yong Zhang
2011-10-22 9:56 ` [PATCH 26/49] cdrom: " Yong Zhang
2011-10-22 9:56 ` [PATCH 27/49] driver/char: " Yong Zhang
2011-10-22 9:56 ` [PATCH 28/49] crypto: " Yong Zhang
2011-10-22 9:56 ` [PATCH 29/49] dmaengine: " Yong Zhang
2011-10-22 9:56 ` [PATCH 30/49] EDAC: " Yong Zhang
2011-10-22 9:56 ` [PATCH 31/49] ISDN: " Yong Zhang
2011-10-22 9:56 ` [PATCH 32/49] media: " Yong Zhang
2011-10-22 9:56 ` [PATCH 33/49] drivers:misc:irq: " Yong Zhang
2011-10-22 9:56 ` [PATCH 34/49] mtd: irq: " Yong Zhang
2011-10-22 9:56 ` [PATCH 35/49] net: " Yong Zhang
2011-10-22 9:56 ` [PATCH 36/49] dirvers/parisc: " Yong Zhang
2011-10-22 9:56 ` [PATCH 37/49] pcmcia: " Yong Zhang
2012-02-05 21:11 ` Dominik Brodowski
2011-10-22 9:56 ` [PATCH 38/49] sony-laptop:irq: " Yong Zhang
2011-10-22 9:56 ` [PATCH 39/49] PNP: irq: " Yong Zhang
2011-10-22 9:56 ` [PATCH 40/49] power_supply:irq: " Yong Zhang
2011-10-22 9:56 ` [PATCH 41/49] powerpc/ps3: irq: " Yong Zhang
2011-10-22 9:56 ` [PATCH 42/49] rtc: " Yong Zhang
2011-10-22 9:56 ` [PATCH 43/49] spi: " Yong Zhang
2011-10-24 12:14 ` Grant Likely
2011-10-22 9:56 ` [PATCH 44/49] w1: " Yong Zhang
2011-10-22 9:56 ` [PATCH 45/49] watchdog: " Yong Zhang
2011-10-22 9:56 ` [PATCH 46/49] xen: " Yong Zhang
2011-10-22 9:56 ` Yong Zhang [this message]
2011-10-22 9:57 ` [PATCH 48/49] USB: pxa168: xls: " Yong Zhang
2011-10-22 13:16 ` Tanmay Upadhyay
2011-10-22 9:57 ` [PATCH 49/49] genirq: " Yong Zhang
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=1319277421-9203-48-git-send-email-yong.zhang0@gmail.com \
--to=yong.zhang0@gmail.com \
--cc=bhelgaas@google.com \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=rdunlap@xenotime.net \
--cc=tglx@linutronix.de \
/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).