x86: Stop guessing IOAPIC routes

That hasn't worked on hardware yet.

Also fixes dumb bug in msi_mask_irq(): it could be called without the
MSI cap.