Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dd0fd51d authored by James Bottomley's avatar James Bottomley Committed by Kyle McMartin
Browse files

[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: default avatarJames Bottomley <jejb@parisc-linux.org>

Signed-off-by: default avatarKyle McMartin <kyle@parisc-linux.org>
parent 63af965d
Loading
Loading
Loading
Loading
+0 −27
Original line number Diff line number Diff line
@@ -970,9 +970,6 @@ intr_return:
	add     %r19,%r20,%r19	/* now have &irq_stat[smp_processor_id()] */
#endif /* CONFIG_SMP */

	LDREG   IRQSTAT_SIRQ_PEND(%r19),%r20    /* hardirq.h: unsigned long */
	cmpib,<>,n 0,%r20,intr_do_softirq /* forward */

intr_check_resched:

	/* check for reschedule */
@@ -1017,17 +1014,6 @@ intr_restore:
	nop
	nop

	.import do_softirq,code
intr_do_softirq:
	BL      do_softirq,%r2
#ifdef CONFIG_64BIT
	ldo	-16(%r30),%r29		/* Reference param save area */
#else
	nop
#endif
	b       intr_check_resched
	nop

	.import schedule,code
intr_do_resched:
	/* Only do reschedule if we are returning to user space */
@@ -2096,9 +2082,6 @@ syscall_check_bh:
	add     %r19,%r20,%r19	/* now have &irq_stat[smp_processor_id()] */
#endif /* CONFIG_SMP */

	LDREG   IRQSTAT_SIRQ_PEND(%r19),%r20    /* hardirq.h: unsigned long */
	cmpib,<>,n 0,%r20,syscall_do_softirq /* forward */

syscall_check_resched:

	/* check for reschedule */
@@ -2236,16 +2219,6 @@ pt_regs_ok:
	b	intr_restore
	nop

	.import do_softirq,code
syscall_do_softirq:
	BL      do_softirq,%r2
	nop
	/* NOTE: We enable I-bit incase we schedule later,
	 * and we might be going back to userspace if we were
	 * traced. */
	b       syscall_check_resched
	ssm     PSW_SM_I, %r0  /* do_softirq returns with I bit off */

	.import schedule,code
syscall_do_resched:
	BL	schedule,%r2