Re: Qemu e1000 broken in -rc1 and -rc2 : bisected

From: Ken Moffat
Date: Fri Mar 06 2015 - 14:28:07 EST


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 <tiejun.chen@xxxxxxxxx>
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 <tiejun.chen@xxxxxxxxx>
Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

I have reverted this from -rc2 (big offsets, 209 and 357 lines) and
everything is working again.

Äen
--
Nanny Ogg usually went to bed early. After all, she was an old lady.
Sometimes she went to bed as early as 6 a.m.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/