[tip:irq/urgent] genirq: Fix incorrect proc spurious output

From: tip-bot for Kenji Kaneshige
Date: Wed Dec 01 2010 - 02:46:18 EST


Commit-ID: 25c9170ed64a6551beefe9315882f754e14486f4
Gitweb: http://git.kernel.org/tip/25c9170ed64a6551beefe9315882f754e14486f4
Author: Kenji Kaneshige <kaneshige.kenji@xxxxxxxxxxxxxx>
AuthorDate: Tue, 30 Nov 2010 17:36:08 +0900
Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
CommitDate: Wed, 1 Dec 2010 08:44:26 +0100

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@xxxxxxxxxxxxxx>
Reviewed-by: Yong Zhang <yong.zhang0@xxxxxxxxx>
LKML-Reference: <4CF4B778.90604@xxxxxxxxxxxxxx>
Cc: stable@xxxxxxxxxx [2.6.33+]
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

---
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 01b1d3a..6c8a2a9 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 = {
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/