diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2007-05-08 03:28:56 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-08 14:15:08 -0400 |
commit | 0e8638e2ace18eb6b814a63fe087106be05ca267 (patch) | |
tree | ed25d468ae48e6819fd1c4a0d0713de95c4b3385 | |
parent | 2833bf68b9634a02895d9463349d8c21bd32ccf6 (diff) |
Deprecate SA_xxx interrupt flags -V2
The deprecation of the SA_xxx interrupt flags did not emit deprecated
warnings. Andrew said about the removal of the deprecated flag defines:
> This is going to break a lot of external stuff. We should have found
> a way to make usage of SA_* emit deprecated warnings (or _some_
> warning) to warn people of impending doom. But I can't immediately
> find a way of doing that. if we _can_ find a way of doing this, I
> suspect we'll need to do it, and give people another six months. It's
> going to get ugly out there. We shall see...
Define the deprecated flags as a call to a __deprecated inline function
so a warning is emitted on compile time.
Extend the reprieve of out of tree drivers to 9/2007.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | Documentation/feature-removal-schedule.txt | 2 | ||||
-rw-r--r-- | include/linux/interrupt.h | 30 |
2 files changed, 19 insertions, 13 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt index a67d617429c..5a1f0319add 100644 --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt | |||
@@ -156,7 +156,7 @@ Who: Greg Kroah-Hartman <gregkh@suse.de> | |||
156 | --------------------------- | 156 | --------------------------- |
157 | 157 | ||
158 | What: Interrupt only SA_* flags | 158 | What: Interrupt only SA_* flags |
159 | When: Januar 2007 | 159 | When: September 2007 |
160 | Why: The interrupt related SA_* flags are replaced by IRQF_* to move them | 160 | Why: The interrupt related SA_* flags are replaced by IRQF_* to move them |
161 | out of the signal namespace. | 161 | out of the signal namespace. |
162 | 162 | ||
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index 2067a7ef6e6..80e63d8e9b1 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h | |||
@@ -54,20 +54,26 @@ | |||
54 | #define IRQF_NOBALANCING 0x00000800 | 54 | #define IRQF_NOBALANCING 0x00000800 |
55 | 55 | ||
56 | /* | 56 | /* |
57 | * Migration helpers. Scheduled for removal in 1/2007 | 57 | * Migration helpers. Scheduled for removal in 9/2007 |
58 | * Do not use for new code ! | 58 | * Do not use for new code ! |
59 | */ | 59 | */ |
60 | #define SA_INTERRUPT IRQF_DISABLED | 60 | static inline |
61 | #define SA_SAMPLE_RANDOM IRQF_SAMPLE_RANDOM | 61 | unsigned long __deprecated deprecated_irq_flag(unsigned long flag) |
62 | #define SA_SHIRQ IRQF_SHARED | 62 | { |
63 | #define SA_PROBEIRQ IRQF_PROBE_SHARED | 63 | return flag; |
64 | #define SA_PERCPU IRQF_PERCPU | 64 | } |
65 | 65 | ||
66 | #define SA_TRIGGER_LOW IRQF_TRIGGER_LOW | 66 | #define SA_INTERRUPT deprecated_irq_flag(IRQF_DISABLED) |
67 | #define SA_TRIGGER_HIGH IRQF_TRIGGER_HIGH | 67 | #define SA_SAMPLE_RANDOM deprecated_irq_flag(IRQF_SAMPLE_RANDOM) |
68 | #define SA_TRIGGER_FALLING IRQF_TRIGGER_FALLING | 68 | #define SA_SHIRQ deprecated_irq_flag(IRQF_SHARED) |
69 | #define SA_TRIGGER_RISING IRQF_TRIGGER_RISING | 69 | #define SA_PROBEIRQ deprecated_irq_flag(IRQF_PROBE_SHARED) |
70 | #define SA_TRIGGER_MASK IRQF_TRIGGER_MASK | 70 | #define SA_PERCPU deprecated_irq_flag(IRQF_PERCPU) |
71 | |||
72 | #define SA_TRIGGER_LOW deprecated_irq_flag(IRQF_TRIGGER_LOW) | ||
73 | #define SA_TRIGGER_HIGH deprecated_irq_flag(IRQF_TRIGGER_HIGH) | ||
74 | #define SA_TRIGGER_FALLING deprecated_irq_flag(IRQF_TRIGGER_FALLING) | ||
75 | #define SA_TRIGGER_RISING deprecated_irq_flag(IRQF_TRIGGER_RISING) | ||
76 | #define SA_TRIGGER_MASK deprecated_irq_flag(IRQF_TRIGGER_MASK) | ||
71 | 77 | ||
72 | typedef irqreturn_t (*irq_handler_t)(int, void *); | 78 | typedef irqreturn_t (*irq_handler_t)(int, void *); |
73 | 79 | ||