diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2011-03-17 22:32:49 +0300 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2011-03-17 22:49:03 +0300 |
commit | 20e2aa916f6b56e6b1d9e34f4c6e8183d27cb81f (patch) | |
tree | d7e73c2d4ca788208b54ad5b82a9c3128f15a5d5 /net/ipv6/inet6_hashtables.c | |
parent | 61ab3fe57e45f365caf73d567926040bdb475217 (diff) | |
download | linux-20e2aa916f6b56e6b1d9e34f4c6e8183d27cb81f.tar.xz |
gpio/langwell: Fix broken irq_eoi change.
commit 0766d20fd (langwell_gpio: modify EOI handling following change
of kernel irq subsystem) changes
- desc->chip->eoi(irq);
+
+ if (desc->chip->irq_eoi)
+ desc->chip->irq_eoi(irq_get_irq_data(irq));
+ else
+ dev_warn(pg->chip.dev, "missing EOI handler for irq %d\n", irq);
With the following explanation:
"Latest kernel has many changes in IRQ subsystem and its interfaces,
like adding irq_eoi" for struct irq_chip, this patch will make it
support both the new and old interface."
This is completely bogus.
#1) The changelog does not match the patch at all
#2) This driver relies on the assumption that it sits behind an eoi
capable interrupt line. If the implementation of the underlying
chip changes from eoi to irq_eoi then this driver has to follow
that change and not add a total bogosity.
#3) Just mechanically changing eoi to irq_eoi without checking the
background of that change is sloppy at best.
Remove the sillyness and retrieve the interrupt data from irq_desc
directly. No need to go through a sparse irq lookup.
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Feng Tang <feng.tang@intel.com>
Cc: Alek Du <alek.du@intel.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'net/ipv6/inet6_hashtables.c')
0 files changed, 0 insertions, 0 deletions