Date: Wed, 6 Aug 2014 21:27:16 +0000 (UTC) From: Ian Lepore <ian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r269646 - head/sys/arm/arm Message-ID: <53e29db4.5f39.275b0c5a@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ian Date: Wed Aug 6 21:27:15 2014 New Revision: 269646 URL: http://svnweb.freebsd.org/changeset/base/269646 Log: Use a SYSINIT to init the array of interrupt names on arm. This was called from initarm() in arm/machdep.c, but many legacy arm platforms have their own private initarm(), so a SYSINIT fixes everyone. Reported by: jmg Modified: head/sys/arm/arm/intr.c head/sys/arm/arm/machdep.c Modified: head/sys/arm/arm/intr.c ============================================================================== --- head/sys/arm/arm/intr.c Wed Aug 6 21:16:15 2014 (r269645) +++ head/sys/arm/arm/intr.c Wed Aug 6 21:27:15 2014 (r269646) @@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$"); #include <sys/param.h> #include <sys/systm.h> #include <sys/syslog.h> +#include <sys/kernel.h> #include <sys/malloc.h> #include <sys/proc.h> #include <sys/bus.h> @@ -75,8 +76,8 @@ size_t sintrnames = sizeof(intrnames); * assumptions of vmstat(8) and the kdb "show intrcnt" command, the two * consumers of this data. */ -void -arm_intrnames_init(void) +static void +intr_init(void *unused) { int i; @@ -86,6 +87,8 @@ arm_intrnames_init(void) } } +SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL); + void arm_setup_irqhandler(const char *name, driver_filter_t *filt, void (*hand)(void*), void *arg, int irq, int flags, void **cookiep) Modified: head/sys/arm/arm/machdep.c ============================================================================== --- head/sys/arm/arm/machdep.c Wed Aug 6 21:16:15 2014 (r269645) +++ head/sys/arm/arm/machdep.c Wed Aug 6 21:27:15 2014 (r269646) @@ -1278,7 +1278,6 @@ initarm(struct arm_boot_params *abp) init_proc0(kernelstack.pv_va); - arm_intrnames_init(); arm_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL); pmap_bootstrap(freemempos, &kernel_l1pt); msgbufp = (void *)msgbufpv.pv_va;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?53e29db4.5f39.275b0c5a>