aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-12-11 21:12:06 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2012-12-11 21:12:06 -0500
commitaefb058b0c27dafb15072406fbfd92d2ac2c8790 (patch)
treede24b50221cfdbd8ebedb2add38c6125de604c3d /include/linux
parent37ea95a959d4a49846ecbf2dd45326b6b34bf049 (diff)
parent04aa530ec04f61875b99c12721162e2964e3318c (diff)
Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull irq fixes from Ingo Molnar: "Affinity fixes and a nested threaded IRQ handling fix." * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: genirq: Always force thread affinity irq: Set CPU affinity right on thread creation genirq: Provide means to retrigger parent
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/irq.h9
-rw-r--r--include/linux/irqdesc.h3
2 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h
index 216b0ba109d..526f10a637c 100644
--- a/include/linux/irq.h
+++ b/include/linux/irq.h
@@ -392,6 +392,15 @@ static inline void irq_move_masked_irq(struct irq_data *data) { }
392 392
393extern int no_irq_affinity; 393extern int no_irq_affinity;
394 394
395#ifdef CONFIG_HARDIRQS_SW_RESEND
396int irq_set_parent(int irq, int parent_irq);
397#else
398static inline int irq_set_parent(int irq, int parent_irq)
399{
400 return 0;
401}
402#endif
403
395/* 404/*
396 * Built-in IRQ handlers for various IRQ types, 405 * Built-in IRQ handlers for various IRQ types,
397 * callable via desc->handle_irq() 406 * callable via desc->handle_irq()
diff --git a/include/linux/irqdesc.h b/include/linux/irqdesc.h
index 0ba014c5505..623325e2ff9 100644
--- a/include/linux/irqdesc.h
+++ b/include/linux/irqdesc.h
@@ -11,6 +11,8 @@
11struct irq_affinity_notify; 11struct irq_affinity_notify;
12struct proc_dir_entry; 12struct proc_dir_entry;
13struct module; 13struct module;
14struct irq_desc;
15
14/** 16/**
15 * struct irq_desc - interrupt descriptor 17 * struct irq_desc - interrupt descriptor
16 * @irq_data: per irq and chip data passed down to chip functions 18 * @irq_data: per irq and chip data passed down to chip functions
@@ -65,6 +67,7 @@ struct irq_desc {
65#ifdef CONFIG_PROC_FS 67#ifdef CONFIG_PROC_FS
66 struct proc_dir_entry *dir; 68 struct proc_dir_entry *dir;
67#endif 69#endif
70 int parent_irq;
68 struct module *owner; 71 struct module *owner;
69 const char *name; 72 const char *name;
70} ____cacheline_internodealigned_in_smp; 73} ____cacheline_internodealigned_in_smp;