array index of '-16' indexes before the beginning of the array

Ryan Stone rysto32 at gmail.com
Mon Nov 28 00:59:40 UTC 2011


On Sun, Nov 27, 2011 at 6:42 PM, Andriy Gapon <avg at freebsd.org> wrote:
>
> Looks like clang has found a real issue here:
> /usr/src/sys/x86/x86/local_apic.c:311:2: warning: array index of '-16' indexes
> before the beginning of the array [-Warray-bounds]
>        lapics[apic_id].la_ioint_irqs[IDT_DTRACE_RET - APIC_IO_INTS] =
> IRQ_DTRACE_RET;

Hm, so as far as I can tell the DTrace-related code in local_apic.c is
bogus.  DTrace's interrupt vectors are 32 and 33, which aren't I/O
vectors, so local_apic.c shouldn't need to know anything about them.
I think that the right fix is to remove all of it from local_apic.c.


More information about the freebsd-current mailing list