m68knommu: use one exist from execption
Part of the code that did not make sense to me got removed by Greg. This is part two: The first compare is to check whether the interrupts are disabled or not. Depending on the result we exectute the RESTORE_ALL macro is not only restoring the stack but also returning to caller. The test for pending softirq has been removed because it is allready done in irq_exit(). Since system_call() is allso using the SAVE_ALL macro and returning via ret_from_exception label I see no reason why we could not do this here as well. This is also handy because if we return from the timer interrupt and we need to resched than we check for this :) Signed-off-by: Sebastian Siewior <bigeasy@linutronix.de> Signed-off-by: Greg Ungerer <gerg@uclinux.org>
This commit is contained in:
Родитель
5ee8100721
Коммит
c7bcd0df1f
|
@ -215,19 +215,8 @@ ENTRY(fasthandler)
|
|||
RESTORE_LOCAL
|
||||
|
||||
ENTRY(ret_from_interrupt)
|
||||
moveb %sp@(PT_SR),%d0
|
||||
andl #0x7,%d0
|
||||
jeq 1f
|
||||
|
||||
RESTORE_ALL
|
||||
|
||||
1:
|
||||
/* check if we need to do software interrupts */
|
||||
movel irq_stat+CPUSTAT_SOFTIRQ_PENDING,%d0
|
||||
jeq ret_from_exception
|
||||
|
||||
pea ret_from_exception
|
||||
jmp do_softirq
|
||||
/* the fasthandler is confusing me, haven't seen any user */
|
||||
jmp ret_from_exception
|
||||
|
||||
/*
|
||||
* Beware - when entering resume, prev (the current task) is
|
||||
|
|
Загрузка…
Ссылка в новой задаче