From: Jeff Dike <jdike@addtoit.com>

A small update to make UML's handle_IRQ_event look like the i386 version.

Signed-off-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/arch/um/kernel/irq.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff -puN arch/um/kernel/irq.c~uml-update-handle_irq_event arch/um/kernel/irq.c
--- 25/arch/um/kernel/irq.c~uml-update-handle_irq_event	Tue Sep 14 17:08:24 2004
+++ 25-akpm/arch/um/kernel/irq.c	Tue Sep 14 17:08:24 2004
@@ -147,7 +147,7 @@ int handle_IRQ_event(unsigned int irq, s
 		     struct irqaction * action)
 {
 	int status = 1;	/* Force the "do bottom halves" bit */
-	int ret;
+	int ret, retval = 0;
 
 	if (!(action->flags & SA_INTERRUPT))
 		local_irq_enable();
@@ -156,6 +156,7 @@ int handle_IRQ_event(unsigned int irq, s
 		ret = action->handler(irq, action->dev_id, regs);
 		if (ret == IRQ_HANDLED)
 			status |= action->flags;
+		retval |= ret;
 		action = action->next;
 	} while (action);
 	if (status & SA_SAMPLE_RANDOM)
@@ -163,7 +164,7 @@ int handle_IRQ_event(unsigned int irq, s
 
 	local_irq_disable();
 
-	return status;
+	return retval;
 }
 
 /*
_