diff options
author | Steven Rostedt <rostedt@goodmis.org> | 2015-03-19 10:18:51 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-03-23 10:55:21 +0100 |
commit | 71ad00d61ec861dc68b4544887729850e58cb99b (patch) | |
tree | cc2ea77f0cea5271df65f502f456e034a8f0931e /include/linux/irq_work.h | |
parent | e1b63dec2ddba654c7ca75996284e453f32d1af7 (diff) | |
download | linux-71ad00d61ec861dc68b4544887729850e58cb99b.tar.gz linux-71ad00d61ec861dc68b4544887729850e58cb99b.tar.bz2 linux-71ad00d61ec861dc68b4544887729850e58cb99b.zip |
irq_work: Fix build failure when CONFIG_IRQ_WORK is not defined
When CONFIG_IRQ_WORK is not defined (difficult to do, as it also
requires CONFIG_PRINTK not to be defined), we get a build failure:
kernel/built-in.o: In function `flush_smp_call_function_queue':
kernel/smp.c:263: undefined reference to `irq_work_run'
kernel/smp.c:263: undefined reference to `irq_work_run'
Makefile:933: recipe for target 'vmlinux' failed
Simplest thing to do is to make irq_work_run() a nop when not set.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Link: http://lkml.kernel.org/r/20150319101851.4d224d9b@gandalf.local.home
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/linux/irq_work.h')
-rw-r--r-- | include/linux/irq_work.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/irq_work.h b/include/linux/irq_work.h index bf3fe719c7ce..47b9ebd4a74f 100644 --- a/include/linux/irq_work.h +++ b/include/linux/irq_work.h @@ -38,16 +38,17 @@ bool irq_work_queue(struct irq_work *work); bool irq_work_queue_on(struct irq_work *work, int cpu); #endif -void irq_work_run(void); void irq_work_tick(void); void irq_work_sync(struct irq_work *work); #ifdef CONFIG_IRQ_WORK #include <asm/irq_work.h> +void irq_work_run(void); bool irq_work_needs_cpu(void); #else static inline bool irq_work_needs_cpu(void) { return false; } +static inline void irq_work_run(void) { } #endif #endif /* _LINUX_IRQ_WORK_H */ |