X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=bootcensus;a=blobdiff_plain;f=src%2Fintr.c;h=e04a1775a41c83095d841b6073368a32d117cb7b;hp=a9bd5f1f772bb760af355be90d46e1a4c530e816;hb=41e4fa8d02a2ca85c871c8cc3a4c6c93331cdfb3;hpb=0626040a5133ff8f8e071a20e9165c9618eb8c4a diff --git a/src/intr.c b/src/intr.c index a9bd5f1..e04a177 100644 --- a/src/intr.c +++ b/src/intr.c @@ -116,7 +116,10 @@ struct intr_frame *get_intr_frame(void) /* set an interrupt handler function for a particular interrupt */ void interrupt(int intr_num, intr_func_t func) { + int iflag = get_intr_flag(); + disable_intr(); intr_func[intr_num] = func; + set_intr_flag(iflag); } /* this function is called from all interrupt entry points