patch-2.4.0-test6 linux/arch/s390/kernel/irq.c

Next file: linux/arch/s390/kernel/process.c
Previous file: linux/arch/s390/kernel/entry.S
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test5/linux/arch/s390/kernel/irq.c linux/arch/s390/kernel/irq.c
@@ -143,9 +143,9 @@
 
 	printk("\n%s, CPU %d:\n", str, cpu);
 	printk("irq:  %d [%d]\n",
-	       atomic_read(&global_irq_count),atomic_read(&S390_lowcore.local_irq_count));
+	       atomic_read(&global_irq_count),local_irq_count(smp_processor_id()));
 	printk("bh:   %d [%d]\n",
-	       atomic_read(&global_bh_count),atomic_read(&S390_lowcore.local_bh_count));
+	       atomic_read(&global_bh_count),local_bh_count(smp_processor_id()));
 	stack = (unsigned long *) &str;
 	for (i = 40; i ; i--) {
 		unsigned long x = *++stack;
@@ -181,7 +181,7 @@
 		 * already executing in one..
 		 */
 		if (!atomic_read(&global_irq_count)) {
-			if (atomic_read(&safe_get_cpu_lowcore(cpu).local_bh_count)||
+			if (local_bh_count(cpu)||
 			    !atomic_read(&global_bh_count))
 				break;
 		}
@@ -202,7 +202,7 @@
 				continue;
 			if (atomic_read(&global_irq_lock))
 				continue;
-			if (!(atomic_read(&safe_get_cpu_lowcore(cpu).local_bh_count))
+			if (!local_bh_count(cpu)
 			    && atomic_read(&global_bh_count))
 				continue;
 			if (!test_and_set_bit(0,&global_irq_lock))
@@ -288,7 +288,7 @@
 	if (flags & (1 << EFLAGS_I_SHIFT)) {
 		int cpu = smp_processor_id();
 		__cli();
-		if (!atomic_read(&S390_lowcore.local_irq_count))
+		if (!in_irq())
 			get_irqlock(cpu);
 	}
 }
@@ -296,7 +296,7 @@
 void __global_sti(void)
 {
 
-	if (!atomic_read(&S390_lowcore.local_irq_count))
+	if (!in_irq())
 		release_irqlock(smp_processor_id());
 	__sti();
 }
@@ -320,7 +320,7 @@
 	retval = 2 + local_enabled;
 
 	/* check for global flags if we're not in an interrupt */
-	if (!atomic_read(&S390_lowcore.local_irq_count))
+	if (!in_irq())
 	{
 		if (local_enabled)
 			retval = 1;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)