From: Yong Zhang <yong.zhang0@gmail.com>
To: linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org
Cc: tglx@linutronix.de, yong.zhang0@gmail.com,
Jesse Barnes <jbarnes@virtuousgeek.org>,
Randy Dunlap <rdunlap@xenotime.net>,
linux-pci@vger.kernel.org, linux-doc@vger.kernel.org
Subject: [PATCH 54/55] Documentation: irq: Change documents related to IRQF_DISABLED
Date: Thu, 22 Sep 2011 16:59:21 +0800 [thread overview]
Message-ID: <1316681962-8217-55-git-send-email-yong.zhang0@gmail.com> (raw)
In-Reply-To: <1316681962-8217-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>
---
Documentation/PCI/MSI-HOWTO.txt | 21 ---------------------
Documentation/scsi/ncr53c8xx.txt | 4 +++-
Documentation/scsi/tmscsim.txt | 4 ++--
3 files changed, 5 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..c5a9904 100644
--- a/Documentation/scsi/ncr53c8xx.txt
+++ b/Documentation/scsi/ncr53c8xx.txt
@@ -786,7 +786,9 @@ 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 (does not make sense
+ any more since genirq will keep irq disabled and the flag
+ is dead from linux-2.6.35) flag when requesting irq
(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.4.1
next prev parent reply other threads:[~2011-09-22 9:07 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-22 8:58 [PATCH V2 00/55] Tree wide: cleanup IRQF_DISABLED Yong Zhang
2011-09-22 8:58 ` [PATCH 01/55] usb/hcd: Remove tricky code dealing with IRQF_DISABLED && IRQF_SHARED Yong Zhang
2011-09-22 8:58 ` [PATCH 02/55] alpha: irq: Remove IRQF_DISABLED Yong Zhang
2011-09-22 8:58 ` [PATCH 04/55] avr32: " Yong Zhang
2011-09-22 8:58 ` [PATCH 05/55] cris: " Yong Zhang
2011-09-22 8:58 ` [PATCH 06/55] frv: " Yong Zhang
2011-09-22 8:58 ` [PATCH 07/55] h8300: " Yong Zhang
2011-09-22 8:58 ` [PATCH 08/55] ia64: " Yong Zhang
2011-09-22 8:58 ` [PATCH 09/55] m32r: " Yong Zhang
2011-09-22 8:58 ` [PATCH 10/55] m68k: " Yong Zhang
2011-09-22 8:58 ` [PATCH 11/55] microblaze: " Yong Zhang
2011-09-22 8:58 ` [PATCH 13/55] mn10300: " Yong Zhang
2011-09-22 8:58 ` [PATCH 14/55] parisc: irq: remove IRQF_DISABLED Yong Zhang
2011-09-22 8:58 ` [PATCH 15/55] powerpc: irq: Remove IRQF_DISABLED Yong Zhang
2011-09-22 8:58 ` [PATCH 16/55] score: " Yong Zhang
2011-09-22 8:58 ` [PATCH 17/55] SH: " Yong Zhang
2011-09-22 8:58 ` [PATCH 18/55] sparc: " Yong Zhang
2011-09-22 8:58 ` [PATCH 19/55] um: " Yong Zhang
2011-09-22 10:46 ` Richard Weinberger
2011-09-22 8:58 ` [PATCH 20/55] unicore32: " Yong Zhang
2011-09-22 8:58 ` [PATCH 21/55] x86: irq: " Yong Zhang
2011-09-22 8:58 ` [PATCH 22/55] xtensa: " Yong Zhang
2011-09-22 8:58 ` [PATCH 23/55] clocksource: " Yong Zhang
2011-09-22 8:58 ` [PATCH 24/55] SCSI: " Yong Zhang
2011-09-23 1:35 ` Jack Wang
2011-09-22 8:58 ` [PATCH 25/55] ata: " Yong Zhang
2011-09-22 8:58 ` [PATCH 26/55] block: " Yong Zhang
2011-09-22 8:58 ` [PATCH 27/55] cdrom: " Yong Zhang
2011-09-22 8:58 ` [PATCH 28/55] driver/char: " Yong Zhang
2011-09-22 8:58 ` [PATCH 29/55] crypto: " Yong Zhang
2011-09-22 8:58 ` [PATCH 30/55] dmaengine: " Yong Zhang
2011-09-22 8:58 ` [PATCH 31/55] EDAC: " Yong Zhang
2011-09-22 8:58 ` [PATCH 32/55] i2c: " Yong Zhang
2011-09-24 11:53 ` Jean Delvare
2011-10-04 20:59 ` Ben Dooks
2011-09-22 8:59 ` [PATCH 33/55] infiniband: " Yong Zhang
2011-09-22 16:56 ` Roland Dreier
2011-09-23 1:40 ` Yong Zhang
2011-09-23 1:48 ` Yong Zhang
2011-09-23 18:09 ` Roland Dreier
2011-09-22 8:59 ` [PATCH 34/55] ISDN: " Yong Zhang
2011-09-22 8:59 ` [PATCH 36/55] drivers:misc:irq: " Yong Zhang
2011-09-22 8:59 ` [PATCH 37/55] mmc: irq: " Yong Zhang
2011-09-23 18:55 ` Chris Ball
2011-09-22 8:59 ` [PATCH 38/55] mtd: " Yong Zhang
2011-09-22 8:59 ` [PATCH 40/55] dirvers/parisc: " Yong Zhang
2011-09-22 8:59 ` [PATCH 41/55] pcmcia: " Yong Zhang
2011-09-22 8:59 ` [PATCH 42/55] sony-laptop:irq: " Yong Zhang
2011-09-22 8:59 ` [PATCH 43/55] PNP: irq: " Yong Zhang
2011-09-22 8:59 ` [PATCH 44/55] power_supply:irq: " Yong Zhang
2011-11-25 20:35 ` Anton Vorontsov
2011-09-22 8:59 ` [PATCH 45/55] powerpc/ps3: irq: " Yong Zhang
2011-09-22 8:59 ` [PATCH 46/55] rtc: " Yong Zhang
2011-09-22 8:59 ` [PATCH 47/55] spi: " Yong Zhang
2011-09-22 8:59 ` [PATCH 48/55] TTY: " Yong Zhang
2011-09-22 8:59 ` [PATCH 49/55] video: " Yong Zhang
2011-10-04 20:20 ` Florian Tobias Schandinat
2011-09-22 8:59 ` [PATCH 50/55] w1: " Yong Zhang
2011-09-22 8:59 ` [PATCH 51/55] watchdog: " Yong Zhang
2011-09-22 8:59 ` [PATCH 52/55] xen: " Yong Zhang
2011-09-22 8:59 ` Yong Zhang [this message]
2011-09-22 8:59 ` [PATCH 55/55] 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=1316681962-8217-55-git-send-email-yong.zhang0@gmail.com \
--to=yong.zhang0@gmail.com \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-arch@vger.kernel.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
all inboxes | Powered by JetHome®