[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <464E9739.40909@garzik.org>
Date: Sat, 19 May 2007 02:20:41 -0400
From: Jeff Garzik <jeff@...zik.org>
To: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
CC: Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>
Subject: [PATCH/WIP] Remove 'irq' argument from all IRQ handlers
Attached is the patch and description that represents a current
work-in-progress, removal of the 'irq' argument passed to all driver IRQ
handlers.
As this patch demonstrates, the 'irq' argument is useless and
practically unused. The vast majority of drivers have this information
elsewhere (struct pci_dev or private struct). The cases where it is
actually used are as follows:
* a couple Mac drivers have multiple IRQs, and use the irq argument for
disambiguation purposes. This can easily be remedied by moving that
information into the info passed in the normal void* pointer.
* Several ancient ISA drivers, which mainly use it for
printk-in-irq-handler purposes. A couple use the irq argument as an
index into a structure, which is a buggy approach. I fixed up these.
This can be found in the 'hacking-irq-remove' branch of
git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6.git
Before I will even consider submitting this upstream, this patchset needs
* non-x86[-64] build fixes, and testing
* update the Mac drivers
* one more review pass, to make sure everything is kosher
so IOW, not anytime soon :)
View attachment "desc" of type "text/plain" (49309 bytes)
Download attachment "patch.gz" of type "application/x-gzip" (121864 bytes)
Powered by blists - more mailing lists