Index: sys/arch/mac68k/mac68k/intr.c =================================================================== RCS file: /cvsroot/src/sys/arch/mac68k/mac68k/intr.c,v retrieving revision 1.29 diff -p -u -r1.29 intr.c --- sys/arch/mac68k/mac68k/intr.c 20 Dec 2010 00:25:36 -0000 1.29 +++ sys/arch/mac68k/mac68k/intr.c 18 Feb 2019 19:26:58 -0000 @@ -100,9 +100,9 @@ void intr_computeipl(void); void intr_init(void) { - extern long intrnames; + extern char intrnames[MAX_INAME_LENGTH]; + extern char eintrnames[] __diagused; const char *inames; - char *g_inames; ipl2psl_table[IPL_NONE] = 0; ipl2psl_table[IPL_SOFTCLOCK] = PSL_S|PSL_IPL1; @@ -111,7 +111,6 @@ intr_init(void) ipl2psl_table[IPL_SOFTBIO] = PSL_S|PSL_IPL1; ipl2psl_table[IPL_HIGH] = PSL_S|PSL_IPL7; - g_inames = (char *) &intrnames; if (mac68k_machine.aux_interrupts) { inames = AUX_INAMES; @@ -132,7 +131,9 @@ intr_init(void) } } - memcpy(g_inames, inames, MAX_INAME_LENGTH); + KASSERT(MAX_INAME_LENGTH <= + ((uintptr_t)eintrnames - (uintptr_t)intrnames)); + memcpy(intrnames, inames, MAX_INAME_LENGTH); intr_computeipl();