From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751061AbbCIDOk (ORCPT ); Sun, 8 Mar 2015 23:14:40 -0400 Received: from mga02.intel.com ([134.134.136.20]:24252 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750741AbbCIDOh (ORCPT ); Sun, 8 Mar 2015 23:14:37 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,365,1422950400"; d="scan'208";a="688940314" Message-ID: <54FD100C.3080402@intel.com> Date: Mon, 09 Mar 2015 11:14:20 +0800 From: "Chen, Tiejun" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: Ken Moffat , Paolo Bonzini CC: linux-kernel@vger.kernel.org Subject: Re: Qemu e1000 broken in -rc1 and -rc2 : bisected References: <20150306000240.GA9960@milliways> <20150306192728.GA5032@milliways> In-Reply-To: <20150306192728.GA5032@milliways> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2015/3/7 3:27, Ken Moffat wrote: > On Fri, Mar 06, 2015 at 12:02:40AM +0000, Ken Moffat wrote: >> I have a very recent qemu i686 image, using a 3.19.0 kernel and >> dhclient, which works fine if the host is running a 3.19.0 kernel, >> but breaks when the host runs 4.0.0-rc1 or -rc2. >> >> On those, dhclient does not get an address, so I have no network. >> There is a message >> e1000 0000:00:03.0 eth0: Reset adaptor >> >> Before I start trying to bisect this, has anybody already seen, or >> fixed, it ? >> > Bisected. > b4eef9b36db461ca44832226fbca614db58c0c33 is the first bad commit > commit b4eef9b36db461ca44832226fbca614db58c0c33 > Author: Tiejun Chen > Date: Mon Dec 22 10:32:57 2014 +0100 > > kvm: x86: vmx: NULL out hwapic_isr_update() in case of > !enable_apicv > > In most cases calling hwapic_isr_update(), we always check if > kvm_apic_vid_enabled() == 1, but actually, > kvm_apic_vid_enabled() > -> kvm_x86_ops->vm_has_apicv() > -> vmx_vm_has_apicv() or '0' in svm case > -> return enable_apicv && irqchip_in_kernel(kvm) > > So its a little cost to recall vmx_vm_has_apicv() inside > hwapic_isr_update(), here just NULL out hwapic_isr_update() in > case of !enable_apicv inside hardware_setup() then make all > related stuffs follow this. Note we don't check this under that > condition of irqchip_in_kernel() since we should make sure > definitely any caller don't work without in-kernel irqchip. > > Signed-off-by: Tiejun Chen > Signed-off-by: Paolo Bonzini > > I have reverted this from -rc2 (big offsets, 209 and 357 lines) and > everything is working again. > Did you try Linux 4.0-rc3? That includes one relevant fix, KVM: SVM: fix interrupt injection (apic->isr_count always 0) Thanks Tiejun