From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38012) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aiKPT-0003ol-NN for qemu-devel@nongnu.org; Tue, 22 Mar 2016 07:23:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aiKPQ-0007mS-C3 for qemu-devel@nongnu.org; Tue, 22 Mar 2016 07:23:39 -0400 Received: from mx1.redhat.com ([209.132.183.28]:37899) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aiKPQ-0007mK-74 for qemu-devel@nongnu.org; Tue, 22 Mar 2016 07:23:36 -0400 Date: Tue, 22 Mar 2016 13:23:32 +0200 From: "Michael S. Tsirkin" Message-ID: <20160322132151-mutt-send-email-mst@redhat.com> References: <1458200278-11940-1-git-send-email-sameeh@daynix.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1458200278-11940-1-git-send-email-sameeh@daynix.com> Subject: Re: [Qemu-devel] [PATCH 0/2] e1000: Introducing an upper bound of interrupts List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Sameeh Jubran Cc: Dmitry Fleytman , Yan Vugenfirer , Jason Wang , qemu-devel@nongnu.org On Thu, Mar 17, 2016 at 09:37:56AM +0200, Sameeh Jubran wrote: > This patch series introduces an upper bound for the number of interrupts > per second. This feature is supported by the real hardware, however up > until now it wasn't implemented in e1000. This feature is very > significant, it can prevent an interrupt storm by giving the driver > a bounded inter-interrupt interval to handle interrupts. > > This patch was made after observing an interrupt storm in Windows 10 > when disabling e1000. Interesting. There's actually a kvm hack to work-around this in older guests. We always assumed this is a guest bug, but it might be worth testing whether the below patch is still required after fixing qemu. commit 184564efae4d775225c8fe3b762a56956fb1f827 Author: Zhang Haoyu Date: Thu Sep 11 16:47:04 2014 +0800 kvm: ioapic: conditionally delay irq delivery duringeoi broadcast Currently, we call ioapic_service() immediately when we find the irq is still > How reproducible: > > Steps to reproduce: > 1. Start Win 10 guest with e1000 device. > 2. Go to device manager and try to disable and enable the device. > 3. After several enable/disable to the device the guest hangs when > the device is being disabled. > > Actual results: > Guest hang after click OK button. > > Expected results: > Device is disabled. > > After applying the patch the guest no longer hangs, and an Iperf test > ran successfully. > > Sameeh Jubran (2): > e1000: Fixing interrupts pace. > Revert "e1000: fix hang of win2k12 shutdown with flood ping" > > hw/net/e1000.c | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > -- > 2.5.0 >