diff options
author | Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> | 2010-11-30 17:36:08 +0900 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2010-12-01 08:44:26 +0100 |
commit | 25c9170ed64a6551beefe9315882f754e14486f4 (patch) | |
tree | 655035a70de19a8d88cbd04264bfaebc1af92a5a /kernel | |
parent | 22a5b566c8c442b0b35b3b106795e2f2b3578096 (diff) | |
download | lwn-25c9170ed64a6551beefe9315882f754e14486f4.tar.gz lwn-25c9170ed64a6551beefe9315882f754e14486f4.zip |
genirq: Fix incorrect proc spurious output
Since commit a1afb637(switch /proc/irq/*/spurious to seq_file) all
/proc/irq/XX/spurious files show the information of irq 0.
Current irq_spurious_proc_open() passes on NULL as the 3rd argument,
which is used as an IRQ number in irq_spurious_proc_show(), to the
single_open(). Because of this, all the /proc/irq/XX/spurious file
shows IRQ 0 information regardless of the IRQ number.
To fix the problem, irq_spurious_proc_open() must pass on the
appropreate data (IRQ number) to single_open().
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Reviewed-by: Yong Zhang <yong.zhang0@gmail.com>
LKML-Reference: <4CF4B778.90604@jp.fujitsu.com>
Cc: stable@kernel.org [2.6.33+]
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/irq/proc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/irq/proc.c b/kernel/irq/proc.c index 01b1d3a88983..6c8a2a9f8a7b 100644 --- a/kernel/irq/proc.c +++ b/kernel/irq/proc.c @@ -214,7 +214,7 @@ static int irq_spurious_proc_show(struct seq_file *m, void *v) static int irq_spurious_proc_open(struct inode *inode, struct file *file) { - return single_open(file, irq_spurious_proc_show, NULL); + return single_open(file, irq_spurious_proc_show, PDE(inode)->data); } static const struct file_operations irq_spurious_proc_fops = { |