Module Name: src Committed By: thorpej Date: Fri Jan 19 05:45:28 UTC 2024
Modified Files: src/sys/arch/m68k/include: vectors.h src/sys/arch/m68k/m68k: m68k_intr.c Log Message: Ensuire VECO_TO_VECI() returns an 8-bit index. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/sys/arch/m68k/include/vectors.h cvs rdiff -u -r1.10 -r1.11 src/sys/arch/m68k/m68k/m68k_intr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/m68k/include/vectors.h diff -u src/sys/arch/m68k/include/vectors.h:1.4 src/sys/arch/m68k/include/vectors.h:1.5 --- src/sys/arch/m68k/include/vectors.h:1.4 Sun Jan 14 00:00:15 2024 +++ src/sys/arch/m68k/include/vectors.h Fri Jan 19 05:45:28 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: vectors.h,v 1.4 2024/01/14 00:00:15 thorpej Exp $ */ +/* $NetBSD: vectors.h,v 1.5 2024/01/19 05:45:28 thorpej Exp $ */ /*- * Copyright (c) 2024 The NetBSD Foundation, Inc. @@ -122,7 +122,7 @@ #define VECI_TRAP(x) ((x) + VECI_TRAP0) #define VECI_TO_VECO(x) ((x) << 2) -#define VECO_TO_VECI(x) ((unsigned int)(x) >> 2) +#define VECO_TO_VECI(x) ((uint8_t)((unsigned int)(x) >> 2)) #ifdef _KERNEL Index: src/sys/arch/m68k/m68k/m68k_intr.c diff -u src/sys/arch/m68k/m68k/m68k_intr.c:1.10 src/sys/arch/m68k/m68k/m68k_intr.c:1.11 --- src/sys/arch/m68k/m68k/m68k_intr.c:1.10 Tue Jan 16 02:36:49 2024 +++ src/sys/arch/m68k/m68k/m68k_intr.c Fri Jan 19 05:45:28 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: m68k_intr.c,v 1.10 2024/01/16 02:36:49 thorpej Exp $ */ +/* $NetBSD: m68k_intr.c,v 1.11 2024/01/19 05:45:28 thorpej Exp $ */ /*- * Copyright (c) 1996, 2023, 2024 The NetBSD Foundation, Inc. @@ -34,7 +34,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: m68k_intr.c,v 1.10 2024/01/16 02:36:49 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: m68k_intr.c,v 1.11 2024/01/19 05:45:28 thorpej Exp $"); #define _M68K_INTR_PRIVATE @@ -389,7 +389,7 @@ void m68k_intr_autovec(struct clockframe void m68k_intr_autovec(struct clockframe frame) { - const int ipl = VECO_TO_VECI(frame.cf_vo & 0xfff) - VECI_INTRAV0; + const int ipl = VECO_TO_VECI(frame.cf_vo) - VECI_INTRAV0; struct m68k_intrhand *ih; bool rv = false; @@ -420,7 +420,7 @@ void m68k_intr_vectored(struct clockfram void m68k_intr_vectored(struct clockframe frame) { - const int vec = VECO_TO_VECI(frame.cf_vo & 0xfff); + const int vec = VECO_TO_VECI(frame.cf_vo); const int ipl = (getsr() >> 8) & 7; struct m68k_intrhand *ih;