diff options
author | jhb <jhb@FreeBSD.org> | 2004-12-23 20:34:18 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2004-12-23 20:34:18 +0000 |
commit | b74bf1946f3bfb8c72732fabf275b27535881e21 (patch) | |
tree | 1a8da02eb1246a093f5cea284ffa5529c6b6d290 /sys/i386 | |
parent | a618275b13403f9bf275545c254a6ad694a98ac7 (diff) | |
download | FreeBSD-src-b74bf1946f3bfb8c72732fabf275b27535881e21.zip FreeBSD-src-b74bf1946f3bfb8c72732fabf275b27535881e21.tar.gz |
Add a simple 'intrcnt_add' function that other MD code can use to add a
single named counter to the interrupt counts without having to fake up an
entire interrupt source.
Diffstat (limited to 'sys/i386')
-rw-r--r-- | sys/i386/i386/intr_machdep.c | 11 | ||||
-rw-r--r-- | sys/i386/include/intr_machdep.h | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/sys/i386/i386/intr_machdep.c b/sys/i386/i386/intr_machdep.c index 97a3748..0c5f6af 100644 --- a/sys/i386/i386/intr_machdep.c +++ b/sys/i386/i386/intr_machdep.c @@ -286,6 +286,17 @@ intrcnt_register(struct intsrc *is) is->is_straycount = &intrcnt[is->is_index + 1]; } +void +intrcnt_add(const char *name, u_long **countp) +{ + + mtx_lock_spin(&intr_table_lock); + *countp = &intrcnt[intrcnt_index]; + intrcnt_setname(name, intrcnt_index); + intrcnt_index++; + mtx_unlock_spin(&intr_table_lock); +} + static void intr_init(void *dummy __unused) { diff --git a/sys/i386/include/intr_machdep.h b/sys/i386/include/intr_machdep.h index af9e672..a988063 100644 --- a/sys/i386/include/intr_machdep.h +++ b/sys/i386/include/intr_machdep.h @@ -100,6 +100,7 @@ int intr_register_source(struct intsrc *isrc); int intr_remove_handler(void *cookie); void intr_resume(void); void intr_suspend(void); +void intrcnt_add(const char *name, u_long **countp); #endif /* !LOCORE */ #endif /* _KERNEL */ |