summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_intr.c
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2013-04-05 14:30:51 +0000
committerkib <kib@FreeBSD.org>2013-04-05 14:30:51 +0000
commitd6e3efdde97c9e3ed66f70b5cd94ff323da6fd5a (patch)
tree16a6c4a75dd1aa3d4c4ff74b1ca3e1f8c360f294 /sys/kern/kern_intr.c
parent9414459699f1fec0c072d9fba0b3c751e9847175 (diff)
downloadFreeBSD-src-d6e3efdde97c9e3ed66f70b5cd94ff323da6fd5a.zip
FreeBSD-src-d6e3efdde97c9e3ed66f70b5cd94ff323da6fd5a.tar.gz
If filter of the interrupt event is not null, print it, in addition to
the handler address. Add a mark to distinguish between filter and handler. Note that the arguments for both filter and handler are same. Sponsored by: The FreeBSD Foundation Reviewed by: jhb MFC after: 1 week
Diffstat (limited to 'sys/kern/kern_intr.c')
-rw-r--r--sys/kern/kern_intr.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/kern/kern_intr.c b/sys/kern/kern_intr.c
index 8351ab8..8d63c9b 100644
--- a/sys/kern/kern_intr.c
+++ b/sys/kern/kern_intr.c
@@ -1739,7 +1739,16 @@ db_dump_intrhand(struct intr_handler *ih)
break;
}
db_printf(" ");
- db_printsym((uintptr_t)ih->ih_handler, DB_STGY_PROC);
+ if (ih->ih_filter != NULL) {
+ db_printf("[F]");
+ db_printsym((uintptr_t)ih->ih_filter, DB_STGY_PROC);
+ }
+ if (ih->ih_handler != NULL) {
+ if (ih->ih_filter != NULL)
+ db_printf(",");
+ db_printf("[H]");
+ db_printsym((uintptr_t)ih->ih_handler, DB_STGY_PROC);
+ }
db_printf("(%p)", ih->ih_argument);
if (ih->ih_need ||
(ih->ih_flags & (IH_EXCLUSIVE | IH_ENTROPY | IH_DEAD |
OpenPOWER on IntegriCloud