Messages in this thread Patch in this message | | | Date | Tue, 18 Jun 2013 13:19:10 +0200 | From | Heiko Carstens <> | Subject | Re: [GIT PULL] s390 patches for the 3.10-rc6 |
| |
On Tue, Jun 18, 2013 at 12:08:51PM +0200, Geert Uytterhoeven wrote: > On Thu, Jun 13, 2013 at 4:47 PM, Martin Schwidefsky > allnoconfig: > > arch/s390/kernel/irq.c:315:6: error: expected identifier or '(' before '__asm__' > http://kisskb.ellerman.id.au/kisskb/buildresult/8987667/ > > The function is expanded to: > > void __asm__ __volatile__("": : :"memory") > { > > } > > include/linux/hardirq.h: # define synchronize_irq(irq) barrier() > include/linux/compiler-gcc.h: #define barrier() __asm__ > __volatile__("": : :"memory") > > Turning synchronize_irq() into a static inline function doesn't help as then > it becomes a redefinition.
We received a patch from Ben which fixes this:
From 7bf4da5763f30823b4eeb4c82f8499ffe2f475ab Mon Sep 17 00:00:00 2001 From: Ben Hutchings <ben@decadent.org.uk> Date: Fri, 14 Jun 2013 01:18:44 +0100 Subject: [PATCH] s390/irq: Only define synchronize_irq() on SMP
In uniprocessor configurations, synchronize_irq() is defined in <linux/hardirq.h> as a macro, and this function definition fails to compile.
Reported-by: kbuild test robot <fengguang.wu@intel.com> Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Cc: stable@vger.kernel.org # 3.9 Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com> --- arch/s390/kernel/irq.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c index 408e866..dd3c199 100644 --- a/arch/s390/kernel/irq.c +++ b/arch/s390/kernel/irq.c @@ -312,6 +312,7 @@ void measurement_alert_subclass_unregister(void) } EXPORT_SYMBOL(measurement_alert_subclass_unregister); +#ifdef CONFIG_SMP void synchronize_irq(unsigned int irq) { /* @@ -320,6 +321,7 @@ void synchronize_irq(unsigned int irq) */ } EXPORT_SYMBOL_GPL(synchronize_irq); +#endif #ifndef CONFIG_PCI -- 1.8.2.2
| |