Date: Thu, 16 Apr 2015 22:44:52 +0000 (UTC) From: Neel Natu <neel@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r281630 - head/sys/amd64/vmm Message-ID: <201504162244.t3GMiqOP032561@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: neel Date: Thu Apr 16 22:44:51 2015 New Revision: 281630 URL: https://svnweb.freebsd.org/changeset/base/281630 Log: Relax the check on which vectors can be delivered through the APIC. According to the Intel SDM vectors 16 through 255 are allowed to be delivered via the local APIC. Reported by: Leon Dang (ldang@nahannisys.com) MFC after: 2 weeks Modified: head/sys/amd64/vmm/vmm_lapic.c Modified: head/sys/amd64/vmm/vmm_lapic.c ============================================================================== --- head/sys/amd64/vmm/vmm_lapic.c Thu Apr 16 22:35:19 2015 (r281629) +++ head/sys/amd64/vmm/vmm_lapic.c Thu Apr 16 22:44:51 2015 (r281630) @@ -57,7 +57,11 @@ lapic_set_intr(struct vm *vm, int cpu, i if (cpu < 0 || cpu >= VM_MAXCPU) return (EINVAL); - if (vector < 32 || vector > 255) + /* + * According to section "Maskable Hardware Interrupts" in Intel SDM + * vectors 16 through 255 can be delivered through the local APIC. + */ + if (vector < 16 || vector > 255) return (EINVAL); vlapic = vm_lapic(vm, cpu);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201504162244.t3GMiqOP032561>