From 378b5a4cf3e65dd4ebf54fd9b7f6002112d96b72 Mon Sep 17 00:00:00 2001 From: Hans Petter Selasky Date: Fri, 5 Jun 2015 06:23:03 +0000 Subject: [PATCH] Disable VGA PCI interrupts until a chipset driver is loaded for VGA PCI devices. Else unhandled display adapter interrupts might freeze the CPU or consume a lot of CPU. PR: 156596 MFC after: 1 week --- sys/dev/pci/vga_pci.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/dev/pci/vga_pci.c b/sys/dev/pci/vga_pci.c index 65332c36bda..0c49ca09c32 100644 --- a/sys/dev/pci/vga_pci.c +++ b/sys/dev/pci/vga_pci.c @@ -126,6 +126,13 @@ vga_pci_is_boot_display(device_t dev) if ((config & (PCIM_CMD_PORTEN | PCIM_CMD_MEMEN)) == 0) return (0); + /* + * Disable interrupts until a chipset driver is loaded for + * this PCI device. Else unhandled display adapter interrupts + * might freeze the CPU. + */ + pci_write_config(dev, PCIR_COMMAND, config | PCIM_CMD_INTxDIS, 2); + /* This video card is the boot display: record its unit number. */ vga_pci_default_unit = unit; device_set_flags(dev, 1);