mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-11 07:30:16 +00:00
[PATCH] m68k: adjust to changed HARDIRQ_MASK
Adjust entry.S to the changed HARDIRQ_MASK, add a check to prevent it from silently breaking again. Signed-off-by: Roman Zippel <zippel@linux-m68k.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
2dcf15b78d
commit
6d2f16a891
@ -226,7 +226,7 @@ ENTRY(nmi_handler)
|
|||||||
inthandler:
|
inthandler:
|
||||||
SAVE_ALL_INT
|
SAVE_ALL_INT
|
||||||
GET_CURRENT(%d0)
|
GET_CURRENT(%d0)
|
||||||
addqb #1,%curptr@(TASK_INFO+TINFO_PREEMPT+2)
|
addqb #1,%curptr@(TASK_INFO+TINFO_PREEMPT+1)
|
||||||
| put exception # in d0
|
| put exception # in d0
|
||||||
bfextu %sp@(PT_VECTOR){#4,#10},%d0
|
bfextu %sp@(PT_VECTOR){#4,#10},%d0
|
||||||
|
|
||||||
@ -245,7 +245,7 @@ inthandler:
|
|||||||
3: addql #8,%sp | pop parameters off stack
|
3: addql #8,%sp | pop parameters off stack
|
||||||
|
|
||||||
ret_from_interrupt:
|
ret_from_interrupt:
|
||||||
subqb #1,%curptr@(TASK_INFO+TINFO_PREEMPT+2)
|
subqb #1,%curptr@(TASK_INFO+TINFO_PREEMPT+1)
|
||||||
jeq 1f
|
jeq 1f
|
||||||
2:
|
2:
|
||||||
RESTORE_ALL
|
RESTORE_ALL
|
||||||
|
@ -95,6 +95,12 @@ void __init init_IRQ(void)
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
/* assembly irq entry code relies on this... */
|
||||||
|
if (HARDIRQ_MASK != 0x00ff0000) {
|
||||||
|
extern void hardirq_mask_is_broken(void);
|
||||||
|
hardirq_mask_is_broken();
|
||||||
|
}
|
||||||
|
|
||||||
for (i = 0; i < SYS_IRQS; i++) {
|
for (i = 0; i < SYS_IRQS; i++) {
|
||||||
if (mach_default_handler)
|
if (mach_default_handler)
|
||||||
irq_list[i].handler = (*mach_default_handler)[i];
|
irq_list[i].handler = (*mach_default_handler)[i];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user