summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorLinus Torvalds2005-07-07 07:15:13 +0200
committerLinus Torvalds2005-07-07 07:15:13 +0200
commitc101f3136cc98a003d0d16be6fab7d0d950581a6 (patch)
tree738f3ea3ff68245fb0900aeeeb73f1accb2bf956 /arch
parentMerge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 (diff)
parent[SPARC64]: Fix enable_dma() in asm-sparc64/parport.h (diff)
downloadkernel-qcow2-linux-c101f3136cc98a003d0d16be6fab7d0d950581a6.tar.gz
kernel-qcow2-linux-c101f3136cc98a003d0d16be6fab7d0d950581a6.tar.xz
kernel-qcow2-linux-c101f3136cc98a003d0d16be6fab7d0d950581a6.zip
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Diffstat (limited to 'arch')
-rw-r--r--arch/sparc64/kernel/irq.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/sparc64/kernel/irq.c b/arch/sparc64/kernel/irq.c
index 74a2e0808cbc..daa2fb93052c 100644
--- a/arch/sparc64/kernel/irq.c
+++ b/arch/sparc64/kernel/irq.c
@@ -917,7 +917,8 @@ static int irq_affinity_read_proc (char *page, char **start, off_t off,
int count, int *eof, void *data)
{
struct ino_bucket *bp = ivector_table + (long)data;
- struct irqaction *ap = bp->irq_info;
+ struct irq_desc *desc = bp->irq_info;
+ struct irqaction *ap = desc->action;
cpumask_t mask;
int len;
@@ -935,11 +936,13 @@ static int irq_affinity_read_proc (char *page, char **start, off_t off,
static inline void set_intr_affinity(int irq, cpumask_t hw_aff)
{
struct ino_bucket *bp = ivector_table + irq;
+ struct irq_desc *desc = bp->irq_info;
+ struct irqaction *ap = desc->action;
/* Users specify affinity in terms of hw cpu ids.
* As soon as we do this, handler_irq() might see and take action.
*/
- put_smpaff_in_irqaction((struct irqaction *)bp->irq_info, hw_aff);
+ put_smpaff_in_irqaction(ap, hw_aff);
/* Migration is simply done by the next cpu to service this
* interrupt.