summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien Zammit <damien@zamaudio.com>2019-11-11 21:04:47 +1100
committerDamien Zammit <damien@zamaudio.com>2019-11-11 21:04:47 +1100
commit1dc2aedc175fdc5297eab566820ff26e664e4eca (patch)
treee6224c9b5b83473d9e94c595f8c705a905e362a9
parentaf33188fc5a13ad7ad8e6160e9bc1884a8d4af29 (diff)
Fix unmasking curr_pic_mask only irqsdebian-base
-rw-r--r--i386/i386at/interrupt.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/i386/i386at/interrupt.S b/i386/i386at/interrupt.S
index 9f159c5c..3afebc86 100644
--- a/i386/i386at/interrupt.S
+++ b/i386/i386at/interrupt.S
@@ -51,8 +51,9 @@ ENTRY(interrupt)
jl 1f /* no, skip it */
outb %al,$(PIC_SLAVE_ICW)
1:
- movb $0,%al /* empty mask */
+ movl EXT(curr_pic_mask),%eax /* PIC mask to restore */
outb %al,$(PIC_MASTER_OCW) /* unmask master */
+ movb %ah,%al /* shuffle byte */
outb %al,$(PIC_SLAVE_OCW) /* unmask slave */
ret /* return */
END(interrupt)