From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752064AbcENIWG (ORCPT ); Sat, 14 May 2016 04:22:06 -0400 Received: from fallback4.mail.ru ([94.100.181.169]:37749 "EHLO fallback4.mail.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750975AbcENIWD (ORCPT ); Sat, 14 May 2016 04:22:03 -0400 Message-ID: <5736DFFD.9030507@mail.ru> Date: Sat, 14 May 2016 11:21:17 +0300 From: Nikolai Zhubr User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.4) Gecko/20100608 Thunderbird/3.1 MIME-Version: 1.0 To: linux-kernel@vger.kernel.org Subject: x86_64, Haswell, unhandled vga irqs before i915 loaded Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 7bit X-Mras: OK Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello all, Some of my motherboards exhibit the [in]famous bug of throwing unwanted (and unhandled) irqs from integrated intel video core on monitor cable plug/unplug events when there is no specific chipset driver loaded (yet). Searching some forums yields this apparently started happening (sometimes?) starting from Sandy Bridge, affecting both analog VGA output and digital (DVI, HDMI) outputs. Currently, I observe this with 4.1.13 kernel (I could also test some later one but I suppose nothing relevant has changed since). Unfortunately the warning message from the kernel in this particular case is extremally unhelpfull and confusing, because the irq line in question usually happen to be shared with some usb and/or netcard etc., so kernel keeps talking about usb and/or netcard, so people end up being totally confused. How to reproduce: - get some relevant motherboard (Mine is gigabyte ga-b85-hd3 rev 2.1) - ensure i915.ko (or any fb drivers) not automatically loaded on boot. - watch dmesg and /proc/interupts - start plugging/unplugging VGA or HDMI monitor cable. What you will see then (approxmately): /proc/interupts: ... 16: 100001 0 0 IR-IO-APIC-fasteoi ehci_hcd:usb5 ... (100000 counter increase in a fraction of second) dmesg: irq 16: nobody cared (try booting with the "irqpoll" option) ... Disabling IRQ #16 Now meanwhile freebsd people have apparently managed to fix the problem with a one-liner patch, but I can not test it yet because adapting this patch for linux is a bit beyond my capability. This is the discussion: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=156596 This is the patch: https://svnweb.freebsd.org/base?view=revision&revision=284012 This is the commit log: 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. My understanding is that the problem is caused by buggy BIOS rather than the kernel, but e.g. in my case no usefull BIOS update is available (yet?), and still I'd like to "fix" it anyhow. *** Please CC me, I'm not subscribed! Thank you, Regards, Nikolai