From 784b80b76de798e3976620621cbe8f201cebefe4 Mon Sep 17 00:00:00 2001 From: jmcmullan Date: Sun, 21 Jul 2013 21:40:34 +0000 Subject: [PATCH] exec.library: Add some ExecLog style debugging to interrupt management Signed-off-by: Jason S. McMullan git-svn-id: https://svn.aros.org/svn/aros/trunk/AROS@47748 fb15a70f-31f2-0310-bbcc-cdcc74a49acc --- rom/exec/addintserver.c | 3 +++ rom/exec/remintserver.c | 3 +++ rom/exec/setintvector.c | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/rom/exec/addintserver.c b/rom/exec/addintserver.c index 8c062aa53f..fb11c20004 100644 --- a/rom/exec/addintserver.c +++ b/rom/exec/addintserver.c @@ -14,6 +14,7 @@ #include #include +#include "exec_debug.h" #include "exec_intern.h" #include "chipset.h" @@ -60,6 +61,8 @@ static void krnIRQwrapper(void *data1, void *data2) { AROS_LIBFUNC_INIT + ExecLog(SysBase, EXECDEBUGF_EXCEPTHANDLER, "AddIntServer: Int %d, Interrupt %p\n", intNumber, interrupt); + if (intNumber >= INTB_KERNEL) { /* N.B. ln_Succ is being re-purposed/abused here */ interrupt->is_Node.ln_Succ = KrnAddIRQHandler(intNumber - INTB_KERNEL, krnIRQwrapper, interrupt, SysBase); diff --git a/rom/exec/remintserver.c b/rom/exec/remintserver.c index a9c3f8c97a..dc9085e4be 100644 --- a/rom/exec/remintserver.c +++ b/rom/exec/remintserver.c @@ -13,6 +13,7 @@ #include #include +#include "exec_debug.h" #include "exec_intern.h" #include "chipset.h" @@ -49,6 +50,8 @@ { AROS_LIBFUNC_INIT + ExecLog(SysBase, EXECDEBUGF_EXCEPTHANDLER, "RemIntServer: Int %d, Interrupt %p\n", intNumber, interrupt); + if (intNumber >= INTB_KERNEL) { KrnRemIRQHandler(interrupt->is_Node.ln_Succ); return; diff --git a/rom/exec/setintvector.c b/rom/exec/setintvector.c index cb55918d62..d1ca9ebc6a 100644 --- a/rom/exec/setintvector.c +++ b/rom/exec/setintvector.c @@ -10,6 +10,8 @@ #include #include +#include "exec_debug.h" + /***************************************************************************** NAME */ @@ -45,6 +47,8 @@ struct Interrupt *oldint; BOOL ishandler = intNumber <= 2 || (intNumber >= 6 && intNumber <= 12); + ExecLog(SysBase, EXECDEBUGF_EXCEPTHANDLER, "SetIntVector: Int %d, Interrupt %p\n", intNumber, interrupt); + Disable (); oldint = (struct Interrupt *)SysBase->IntVects[intNumber].iv_Node; -- 2.11.4.GIT