patch-1.3.30 linux/arch/i386/kernel/irq.c

Next file: linux/arch/i386/kernel/time.c
Previous file: linux/arch/i386/kernel/Makefile
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v1.3.29/linux/arch/i386/kernel/irq.c linux/arch/i386/kernel/irq.c
@@ -23,6 +23,7 @@
 #include <linux/ioport.h>
 #include <linux/interrupt.h>
 #include <linux/timex.h>
+#include <linux/random.h>
 
 #include <asm/system.h>
 #include <asm/io.h>
@@ -188,6 +189,10 @@
 	struct irqaction * action = irq + irq_action;
 
 	kstat.interrupts[irq]++;
+#ifdef CONFIG_RANDOM
+	if (action->flags & SA_SAMPLE_RANDOM)
+		add_interrupt_randomness(irq);
+#endif
 	action->handler(irq, regs);
 }
 
@@ -201,6 +206,10 @@
 	struct irqaction * action = irq + irq_action;
 
 	kstat.interrupts[irq]++;
+#ifdef CONFIG_RANDOM
+	if (action->flags & SA_SAMPLE_RANDOM)
+		add_interrupt_randomness(irq);
+#endif
 	action->handler(irq, NULL);
 }
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov with Sam's (original) version
of this