From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965174AbbD0UuY (ORCPT ); Mon, 27 Apr 2015 16:50:24 -0400 Received: from mx1.redhat.com ([209.132.183.28]:53392 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965050AbbD0UuX (ORCPT ); Mon, 27 Apr 2015 16:50:23 -0400 Date: Mon, 27 Apr 2015 22:50:07 +0200 From: "Michael S. Tsirkin" To: Julia Lawall Cc: Gleb Natapov , zhanghy@sangfor.com, jasowang@redhat.com, kernel-janitors@vger.kernel.org, Paolo Bonzini , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , x86@kernel.org, kvm@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] KVM: x86: drop unneeded null test Message-ID: <20150427225001-mutt-send-email-mst@redhat.com> References: <1430166934-30834-1-git-send-email-Julia.Lawall@lip6.fr> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1430166934-30834-1-git-send-email-Julia.Lawall@lip6.fr> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Apr 27, 2015 at 10:35:34PM +0200, Julia Lawall wrote: > From: Julia Lawall > > If the null test is needed, the call to cancel_delayed_work_sync would have > already crashed. Normally, the destroy function should only be called > if the init functoin has succeeded, in which case ioapic is not null. > > Problem found using Coccinelle. > > Signed-off-by: Julia Lawall Acked-by: Michael S. Tsirkin > > --- > arch/x86/kvm/ioapic.c | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > > diff --git a/arch/x86/kvm/ioapic.c b2/arch/x86/kvm/ioapic.c > index 28146f0..09828e2 100644 > --- a/arch/x86/kvm/ioapic.c > +++ b2/arch/x86/kvm/ioapic.c > @@ -637,11 +637,9 @@ void kvm_ioapic_destroy(struct kvm *kvm) > struct kvm_ioapic *ioapic = kvm->arch.vioapic; > > cancel_delayed_work_sync(&ioapic->eoi_inject); > - if (ioapic) { > - kvm_io_bus_unregister_dev(kvm, KVM_MMIO_BUS, &ioapic->dev); > - kvm->arch.vioapic = NULL; > - kfree(ioapic); > - } > + kvm_io_bus_unregister_dev(kvm, KVM_MMIO_BUS, &ioapic->dev); > + kvm->arch.vioapic = NULL; > + kfree(ioapic); > } > > int kvm_get_ioapic(struct kvm *kvm, struct kvm_ioapic_state *state)