patch from nix kernel. don't complain if package missing. Reference: /n/atom/patch/applied2013/fspackmiss Date: Thu Sep 19 18:25:07 CES 2013 Signed-off-by: quanstro@quanstro.net --- /sys/src/fs/amd64/acpi.c Thu Sep 19 18:24:42 2013 +++ /sys/src/fs/amd64/acpi.c Thu Sep 19 18:24:42 2013 @@ -348,6 +348,24 @@ } } +/* + * if we find a gsi for an i/o apic that does not exist, and the gsi + * belongs to a bus that does not exist, assume that both belong to + * a processor that does not exist, and do not complain. + */ +static int +havebus(int bustype, int busno) +{ + Pcidev *p; + + if(bustype != BusPCI) + return 1; + for(p = nil; p = pcimatch(p, 0, 0); ) + if(BUSBNO(p->tbdf) == busno) + return 1; + return 0; +} + static void addirq(int gsi, int bustype, int busno, int irq, int flags) { @@ -355,7 +373,8 @@ u32int i; if((apicno = gsitoapicid(gsi, &intin)) == -1){ - print("acpi: addirq: no apic for gsi %d bus %d.%d\n", gsi, bustype, busno); + if(havebus(bustype, busno)) + print("acpi: addirq: no apic for gsi %d bus %d.%d\n", gsi, bustype, busno); return; } DBG("addirq: gsi %d %s busno %d irq %d flags %.8ux\n", --- /sys/src/fs/amd64/ioapic.c Thu Sep 19 18:24:42 2013 +++ /sys/src/fs/amd64/ioapic.c Thu Sep 19 18:24:42 2013 @@ -93,7 +93,7 @@ return a - xioapic; } } - print("gsitoapicid: no ioapic found for gsi %d\n", gsi); +// print("gsitoapicid: no ioapic found for gsi %d\n", gsi); return -1; }