aboutsummaryrefslogtreecommitdiffstats
path: root/arch/parisc
diff options
context:
space:
mode:
authorJames Bottomley <jejb@parisc-linux.org>2005-10-21 22:54:38 -0400
committerKyle McMartin <kyle@parisc-linux.org>2005-10-21 22:54:38 -0400
commitdd0fd51dc1585941c2edccdb40e5f11ea3a64496 (patch)
tree4da7851b8972bb7251789b3862642aca8274aa07 /arch/parisc
parent63af965d2bc8d8c5d4c5949b8d3dbdc3c7b7d97a (diff)
[PARISC] Remove the spurious do_softirq calls from entry.S
remove the spurious do_softirq calls from entry.S With these in we were calling do_softirq twice; plus the calls in entry.S took no account of nesting. Signed-off-by: James Bottomley <jejb@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
Diffstat (limited to 'arch/parisc')
-rw-r--r--arch/parisc/kernel/entry.S27
1 files changed, 0 insertions, 27 deletions
diff --git a/arch/parisc/kernel/entry.S b/arch/parisc/kernel/entry.S
index 166df5bab769..c7e66ee5b083 100644
--- a/arch/parisc/kernel/entry.S
+++ b/arch/parisc/kernel/entry.S
@@ -970,9 +970,6 @@ intr_return:
970 add %r19,%r20,%r19 /* now have &irq_stat[smp_processor_id()] */ 970 add %r19,%r20,%r19 /* now have &irq_stat[smp_processor_id()] */
971#endif /* CONFIG_SMP */ 971#endif /* CONFIG_SMP */
972 972
973 LDREG IRQSTAT_SIRQ_PEND(%r19),%r20 /* hardirq.h: unsigned long */
974 cmpib,<>,n 0,%r20,intr_do_softirq /* forward */
975
976intr_check_resched: 973intr_check_resched:
977 974
978 /* check for reschedule */ 975 /* check for reschedule */
@@ -1017,17 +1014,6 @@ intr_restore:
1017 nop 1014 nop
1018 nop 1015 nop
1019 1016
1020 .import do_softirq,code
1021intr_do_softirq:
1022 BL do_softirq,%r2
1023#ifdef CONFIG_64BIT
1024 ldo -16(%r30),%r29 /* Reference param save area */
1025#else
1026 nop
1027#endif
1028 b intr_check_resched
1029 nop
1030
1031 .import schedule,code 1017 .import schedule,code
1032intr_do_resched: 1018intr_do_resched:
1033 /* Only do reschedule if we are returning to user space */ 1019 /* Only do reschedule if we are returning to user space */
@@ -2096,9 +2082,6 @@ syscall_check_bh:
2096 add %r19,%r20,%r19 /* now have &irq_stat[smp_processor_id()] */ 2082 add %r19,%r20,%r19 /* now have &irq_stat[smp_processor_id()] */
2097#endif /* CONFIG_SMP */ 2083#endif /* CONFIG_SMP */
2098 2084
2099 LDREG IRQSTAT_SIRQ_PEND(%r19),%r20 /* hardirq.h: unsigned long */
2100 cmpib,<>,n 0,%r20,syscall_do_softirq /* forward */
2101
2102syscall_check_resched: 2085syscall_check_resched:
2103 2086
2104 /* check for reschedule */ 2087 /* check for reschedule */
@@ -2236,16 +2219,6 @@ pt_regs_ok:
2236 b intr_restore 2219 b intr_restore
2237 nop 2220 nop
2238 2221
2239 .import do_softirq,code
2240syscall_do_softirq:
2241 BL do_softirq,%r2
2242 nop
2243 /* NOTE: We enable I-bit incase we schedule later,
2244 * and we might be going back to userspace if we were
2245 * traced. */
2246 b syscall_check_resched
2247 ssm PSW_SM_I, %r0 /* do_softirq returns with I bit off */
2248
2249 .import schedule,code 2222 .import schedule,code
2250syscall_do_resched: 2223syscall_do_resched:
2251 BL schedule,%r2 2224 BL schedule,%r2